🔨 Intégre les régimes RACD et RACL
parent
2ee4ffdeff
commit
144dab467f
|
@ -21,6 +21,7 @@ artiste-auteur . revenus . BNC:
|
|||
|
||||
artiste-auteur . revenus . BNC . micro-bnc:
|
||||
non applicable si: contrôle micro-bnc
|
||||
applicable si: recettes > 0 €/an
|
||||
par défaut: oui
|
||||
question: Souhaitez-vous opter pour le régime micro-BNC ?
|
||||
résumé: Avec abattement forfaitaire fiscal de 34 % au titre des frais professionnels
|
||||
|
@ -141,12 +142,110 @@ artiste-auteur . cotisations . IRCEC:
|
|||
formule:
|
||||
somme:
|
||||
- cotisation RAAP
|
||||
- cotisation RACD
|
||||
- cotisation RACL
|
||||
références:
|
||||
Guide IRCEC 2021: http://www.ircec.fr/wp-content/uploads/2021/02/guide-ircec-2021.pdf
|
||||
|
||||
artiste-auteur . cotisations . IRCEC . cotisation RAAP:
|
||||
applicable si: assiette > 9135 €/an
|
||||
applicable si: assiette > seuil d'affiliation
|
||||
description: |
|
||||
Vous pouvez bénéficier d'un taux réduit à votre demande si vos revenus
|
||||
n'atteignent pas à seuil minimal pour une année donnée. Ce taux réduit
|
||||
s'applique également à vos revenus déjà soumis à cotisation auprès du RACL
|
||||
ou du RACD.
|
||||
formule:
|
||||
variations:
|
||||
- si: taux réduit
|
||||
alors:
|
||||
produit:
|
||||
assiette: assiette
|
||||
taux: 4%
|
||||
- sinon:
|
||||
barème:
|
||||
assiette: assiette
|
||||
tranches:
|
||||
- taux: 4%
|
||||
plafond:
|
||||
variations:
|
||||
- si: profession . RACD
|
||||
alors: cotisation RACD . plafond
|
||||
- si: profession . RACL
|
||||
alors: cotisation RACL . plafond
|
||||
- taux: 8%
|
||||
arrondi: oui
|
||||
|
||||
artiste-auteur . cotisations . IRCEC . cotisation RAAP . seuil d'affiliation: 9135 €/an
|
||||
|
||||
artiste-auteur . cotisations . IRCEC . cotisation RAAP . taux réduit:
|
||||
applicable si: assiette < 3 * seuil d'affiliation
|
||||
question: Souhaitez-vous bénéficier d'un taux réduit pour votre cotisation retraite ? Vos droits seront réduits d'autant.
|
||||
par défaut: non
|
||||
description: |
|
||||
Le régime RAAP vous permet d'opter pour un taux réduit de 4% au lieu de 8%
|
||||
si vous en faite la demande.
|
||||
références:
|
||||
Guide IRCEC 2021: http://www.ircec.fr/wp-content/uploads/2021/02/guide-ircec-2021.pdf#page=5
|
||||
|
||||
artiste-auteur . cotisations . IRCEC . profession:
|
||||
question: Exercez-vous l'une de professions suivantes ?
|
||||
description: |
|
||||
Selon la nature de leur activité, les artistes-auteurs cotisent à
|
||||
un ou plusieurs régimes de retraite complémentaire gérés par
|
||||
l’IRCEC : dans tous les cas et si vous atteignez le seuil
|
||||
d’affiliation, au RAAP, puis selon votre activité artistique au RACD
|
||||
et/ou au RACL.
|
||||
formule:
|
||||
une possibilité:
|
||||
choix obligatoire: non
|
||||
possibilités:
|
||||
- RACD
|
||||
- RACL
|
||||
par défaut: non
|
||||
|
||||
artiste-auteur . cotisations . IRCEC . profession . RACD:
|
||||
icônes: 🎞️
|
||||
titre: auteur ou compositeur dramatique, de spectacle vivant, de films
|
||||
description: |
|
||||
Les professions suivantes cotisent au RACD :
|
||||
- Les auteurs dramatiques exerçant l’une des professions suivantes : scénariste, dialoguiste, adaptateur, réalisateur, auteur de la bible littéraire, auteur graphique d’animation, créateur des personnages originaux et des décors s’il s’agit d’un univers original, etc.
|
||||
- Les auteurs et compositeurs dramatiques et du spectacle vivant : théâtre, danse, opéra, cirque, arts de la rue, etc.
|
||||
formule: profession = 'RACD'
|
||||
|
||||
artiste-auteur . cotisations . IRCEC . profession . RACL:
|
||||
icônes: 🎙️
|
||||
titre: auteur ou compositeur lyrique, dialoguiste de doublage
|
||||
description: Les auteurs et compositeurs d’œuvres musicales et les dialoguistes de doublage cotisent au RACL.
|
||||
formule: profession = 'RACL'
|
||||
|
||||
artiste-auteur . cotisations . IRCEC . régime RACL:
|
||||
question: Cotisez-vous au RACL ?
|
||||
par défaut: non
|
||||
|
||||
artiste-auteur . cotisations . IRCEC . cotisation RACD:
|
||||
applicable si: profession . RACD
|
||||
formule:
|
||||
produit:
|
||||
assiette: assiette
|
||||
plafond: 3 * contrat salarié . plafond sécurité sociale
|
||||
plafond:
|
||||
nom: plafond
|
||||
valeur: 496250 €/an
|
||||
taux: 8%
|
||||
arrondi: oui
|
||||
|
||||
artiste-auteur . cotisations . IRCEC . cotisation RACL:
|
||||
applicable si: profession . RACL
|
||||
formule:
|
||||
barème:
|
||||
assiette: assiette
|
||||
tranches:
|
||||
- taux: 0%
|
||||
plafond: 2739 €/an
|
||||
- taux: 6.5%
|
||||
plafond:
|
||||
nom: plafond
|
||||
valeur: 376665 €/an
|
||||
- taux:
|
||||
nom: cotisation de solidarité
|
||||
valeur: 1.5%
|
||||
arrondi: oui
|
||||
|
|
|
@ -3,7 +3,7 @@ import * as Animate from 'Components/ui/animate'
|
|||
import Emoji from 'Components/utils/Emoji'
|
||||
import { useEngine } from 'Components/utils/EngineContext'
|
||||
import assuranceMaladieSrc from 'Images/assurance-maladie.svg'
|
||||
import * as logosSrc from 'Images/logos-cnavpl'
|
||||
import * as logosSrc from 'Images/logos-caisses-retraite'
|
||||
import urssafSrc from 'Images/Urssaf.svg'
|
||||
import { DottedName } from 'modele-social'
|
||||
import { Trans } from 'react-i18next'
|
||||
|
@ -19,23 +19,7 @@ export default function PLExplanation() {
|
|||
<Animate.fromBottom>
|
||||
<h2>Vos institutions partenaires</h2>
|
||||
<div className="ui__ box-container">
|
||||
<div className="ui__ card box">
|
||||
<a target="_blank" href="https://www.urssaf.fr/portail/home.html">
|
||||
<LogoImg src={urssafSrc} title="logo Urssaf" />
|
||||
</a>
|
||||
<p className="ui__ notice">
|
||||
Les cotisations recouvrées par l'Urssaf, qui servent au
|
||||
financement de la sécurité sociale (assurance maladie,
|
||||
allocations familiales, dépendance)
|
||||
</p>
|
||||
<p className="ui__ lead">
|
||||
<Value
|
||||
unit={unit}
|
||||
displayedUnit="€"
|
||||
expression="dirigeant . indépendant . PL . cotisations Urssaf"
|
||||
/>
|
||||
</p>
|
||||
</div>
|
||||
<CotisationsUrssaf rule="dirigeant . indépendant . PL . cotisations Urssaf" />
|
||||
<CaisseRetraite />
|
||||
<Condition expression="dirigeant . indépendant . PL . PAMC . participation CPAM > 0">
|
||||
<div className="ui__ card box">
|
||||
|
@ -74,6 +58,25 @@ export default function PLExplanation() {
|
|||
)
|
||||
}
|
||||
|
||||
export function CotisationsUrssaf({ rule }: { rule: DottedName }) {
|
||||
const unit = useSelector(targetUnitSelector)
|
||||
return (
|
||||
<div className="ui__ card box">
|
||||
<a target="_blank" href="https://www.urssaf.fr/portail/home.html">
|
||||
<LogoImg src={urssafSrc} title="logo Urssaf" />
|
||||
</a>
|
||||
<p className="ui__ notice">
|
||||
Les cotisations recouvrées par l'Urssaf, qui servent au financement de
|
||||
la sécurité sociale (assurance maladie, allocations familiales,
|
||||
dépendance)
|
||||
</p>
|
||||
<p className="ui__ lead">
|
||||
<Value unit={unit} displayedUnit="€" expression={rule} />
|
||||
</p>
|
||||
</div>
|
||||
)
|
||||
}
|
||||
|
||||
function CaisseRetraite() {
|
||||
const engine = useEngine()
|
||||
const unit = useSelector(targetUnitSelector)
|
||||
|
|
|
@ -709,6 +709,108 @@ artiste-auteur . cotisations . CSG-CRDS . abattement:
|
|||
artiste-auteur . cotisations . CSG-CRDS . assiette:
|
||||
titre.en: base
|
||||
titre.fr: assiette
|
||||
artiste-auteur . cotisations . IRCEC:
|
||||
description.en: >
|
||||
[automatic] If you are a professional artist-author and you are paid in
|
||||
royalties, the
|
||||
|
||||
royalties, the IRCEC is the social security organization that manages your
|
||||
|
||||
management of your compulsory supplementary pension.
|
||||
description.fr: |
|
||||
Si vous êtes artiste-auteur professionnel et que vous êtes rémunéré en
|
||||
droits d’auteur, l’IRCEC est l’organisme de Sécurité sociale qui assure la
|
||||
gestion de votre retraite complémentaire obligatoire.
|
||||
titre.en: '[automatic] Supplementary pension'
|
||||
titre.fr: Retraite complémentaire
|
||||
artiste-auteur . cotisations . IRCEC . cotisation RAAP:
|
||||
description.en: >
|
||||
[automatic] You may be eligible for a reduced rate at your request if your
|
||||
income
|
||||
|
||||
do not reach a minimum threshold in a given year. This reduced rate
|
||||
|
||||
also applies to your income that is already subject to contributions under the RACL
|
||||
|
||||
or the RACD.
|
||||
description.fr: |
|
||||
Vous pouvez bénéficier d'un taux réduit à votre demande si vos revenus
|
||||
n'atteignent pas à seuil minimal pour une année donnée. Ce taux réduit
|
||||
s'applique également à vos revenus déjà soumis à cotisation auprès du RACL
|
||||
ou du RACD.
|
||||
titre.en: '[automatic] AMPS contribution'
|
||||
titre.fr: cotisation RAAP
|
||||
artiste-auteur . cotisations . IRCEC . cotisation RAAP . seuil d'affiliation:
|
||||
titre.en: '[automatic] membership threshold'
|
||||
titre.fr: seuil d'affiliation
|
||||
artiste-auteur . cotisations . IRCEC . cotisation RAAP . taux réduit:
|
||||
description.en: >
|
||||
[automatic] The AMPS scheme allows you to opt for a reduced rate of 4%
|
||||
instead of 8% if you
|
||||
|
||||
if you so request.
|
||||
description.fr: |
|
||||
Le régime RAAP vous permet d'opter pour un taux réduit de 4% au lieu de 8%
|
||||
si vous en faite la demande.
|
||||
question.en:
|
||||
'[automatic] Would you like to benefit from a reduced rate for your
|
||||
pension contribution? Your entitlement will be reduced accordingly.'
|
||||
question.fr: Souhaitez-vous bénéficier d'un taux réduit pour votre cotisation
|
||||
retraite ? Vos droits seront réduits d'autant.
|
||||
titre.en: '[automatic] reduced rate'
|
||||
titre.fr: taux réduit
|
||||
artiste-auteur . cotisations . IRCEC . cotisation RACD:
|
||||
titre.en: '[automatic] RACD contribution'
|
||||
titre.fr: cotisation RACD
|
||||
artiste-auteur . cotisations . IRCEC . cotisation RACL:
|
||||
titre.en: '[automatic] RACL contribution'
|
||||
titre.fr: cotisation RACL
|
||||
artiste-auteur . cotisations . IRCEC . profession:
|
||||
description.en: >
|
||||
[automatic] Depending on the nature of their activity, artists-authors
|
||||
contribute to
|
||||
|
||||
one or more complementary pension schemes managed by the IRCEC
|
||||
|
||||
IRCEC: in all cases and if you reach the affiliation threshold
|
||||
|
||||
affiliation threshold, to the RAAP, then depending on your artistic activity to the RACD
|
||||
|
||||
and/or the RACL.
|
||||
description.fr: |
|
||||
Selon la nature de leur activité, les artistes-auteurs cotisent à
|
||||
un ou plusieurs régimes de retraite complémentaire gérés par
|
||||
l’IRCEC : dans tous les cas et si vous atteignez le seuil
|
||||
d’affiliation, au RAAP, puis selon votre activité artistique au RACD
|
||||
et/ou au RACL.
|
||||
question.en: '[automatic] Do you work in any of the following occupations?'
|
||||
question.fr: Exercez-vous l'une de professions suivantes ?
|
||||
titre.en: '[automatic] profession'
|
||||
titre.fr: profession
|
||||
artiste-auteur . cotisations . IRCEC . profession . RACD:
|
||||
description.en: >
|
||||
[automatic] The following occupations contribute to the CDHA:
|
||||
- Playwrights practising one of the following professions: screenwriter, dialogue writer, adapter, director, author of the literary bible, graphic author of animation, creator of original characters and sets if it is an original universe, etc.
|
||||
- Authors and composers of drama and performing arts: theatre, dance, opera, circus, street arts, etc.
|
||||
description.fr: >
|
||||
Les professions suivantes cotisent au RACD :
|
||||
- Les auteurs dramatiques exerçant l’une des professions suivantes : scénariste, dialoguiste, adaptateur, réalisateur, auteur de la bible littéraire, auteur graphique d’animation, créateur des personnages originaux et des décors s’il s’agit d’un univers original, etc.
|
||||
- Les auteurs et compositeurs dramatiques et du spectacle vivant : théâtre, danse, opéra, cirque, arts de la rue, etc.
|
||||
titre.en: '[automatic] author or composer of drama, live shows, films'
|
||||
titre.fr: auteur ou compositeur dramatique, de spectacle vivant, de films
|
||||
artiste-auteur . cotisations . IRCEC . profession . RACL:
|
||||
description.en:
|
||||
'[automatic] Authors and composers of musical works and dubbing
|
||||
dialogue writers contribute to the RACL.'
|
||||
description.fr: Les auteurs et compositeurs d’œuvres musicales et les
|
||||
dialoguistes de doublage cotisent au RACL.
|
||||
titre.en: '[automatic] lyrical author or composer, dubbing dialogue writer'
|
||||
titre.fr: auteur ou compositeur lyrique, dialoguiste de doublage
|
||||
artiste-auteur . cotisations . IRCEC . régime RACL:
|
||||
question.en: '[automatic] Do you contribute to the RACL?'
|
||||
question.fr: Cotisez-vous au RACL ?
|
||||
titre.en: '[automatic] RACL plan'
|
||||
titre.fr: régime RACL
|
||||
artiste-auteur . cotisations . assiette:
|
||||
description.en: "[automatic] Artists' earnings can be categorized either as
|
||||
wages and salaries or as non-commercial profits. Social security
|
||||
|
@ -726,19 +828,21 @@ artiste-auteur . cotisations . formation professionnelle:
|
|||
titre.en: professional training
|
||||
titre.fr: formation professionnelle
|
||||
artiste-auteur . cotisations . option surcotisation:
|
||||
question.en: Would you like to over-contribute?
|
||||
question.fr: Souhaitez-vous surcotiser ?
|
||||
résumé.en: '[automatic] Your income is below the thresholds allowing you to
|
||||
validate 4 quarters of retirement. You can choose to overcontribute to
|
||||
increase your entitlements.'
|
||||
résumé.fr: Vos revenus sont en dessous des seuils vous permettant de valider 4
|
||||
trimestres de retraite. Vous pouvez choisir de surcotiser pour augmenter vos
|
||||
droits.
|
||||
description.en:
|
||||
'[automatic] Your income is below the thresholds allowing you to
|
||||
validate 4 quarters of retirement. You can choose to contribute more to
|
||||
increase your rights.'
|
||||
description.fr: Vos revenus sont en dessous des seuils vous permettant de
|
||||
valider 4 trimestres de retraite. Vous pouvez choisir de surcotiser pour
|
||||
augmenter vos droits.
|
||||
question.en: '[automatic] Would you like to contribute more to increase your
|
||||
pension rights?'
|
||||
question.fr: Souhaitez-vous surcotiser pour augmenter vos droits à retraite ?
|
||||
titre.en: overcontribution option
|
||||
titre.fr: option surcotisation
|
||||
artiste-auteur . cotisations . vieillesse:
|
||||
titre.en: Basic pension contribution
|
||||
titre.fr: vieillesse
|
||||
titre.en: '[automatic] Basic pension'
|
||||
titre.fr: Retraite de base
|
||||
artiste-auteur . revenus:
|
||||
titre.en: revenues
|
||||
titre.fr: revenus
|
||||
|
|
|
@ -1,20 +1,16 @@
|
|||
import Simulation from 'Components/Simulation'
|
||||
import PeriodSwitch from 'Components/PeriodSwitch'
|
||||
import { DistributionBranch } from 'Components/Distribution'
|
||||
import Value, { Condition } from 'Components/EngineValue'
|
||||
import PeriodSwitch from 'Components/PeriodSwitch'
|
||||
import SimulateurWarning from 'Components/SimulateurWarning'
|
||||
import Simulation from 'Components/Simulation'
|
||||
import { CotisationsUrssaf } from 'Components/simulationExplanation/PLExplanation'
|
||||
import { SimulationGoal, SimulationGoals } from 'Components/SimulationGoals'
|
||||
import 'Components/TargetSelection.css'
|
||||
import Animate from 'Components/ui/animate'
|
||||
import { EngineContext } from 'Components/utils/EngineContext'
|
||||
import { EngineContext, useEngine } from 'Components/utils/EngineContext'
|
||||
import useSimulationConfig from 'Components/utils/useSimulationConfig'
|
||||
import { DottedName } from 'modele-social'
|
||||
import { useContext, useState } from 'react'
|
||||
import { Trans } from 'react-i18next'
|
||||
import { useSelector } from 'react-redux'
|
||||
import urssafSrc from 'Images/Urssaf.svg'
|
||||
import ircecSrc from 'Images/logos-caisses-retraite/ircec.jpg'
|
||||
import { situationSelector } from 'Selectors/simulationSelectors'
|
||||
import { useContext } from 'react'
|
||||
import { Trans } from 'react-i18next'
|
||||
import styled from 'styled-components'
|
||||
import config from './configs/artiste-auteur.yaml'
|
||||
|
||||
|
@ -36,91 +32,43 @@ export default function ArtisteAuteur() {
|
|||
</>
|
||||
)
|
||||
}
|
||||
|
||||
type WarningProps = {
|
||||
dottedName: DottedName
|
||||
}
|
||||
|
||||
function Warning({ dottedName }: WarningProps) {
|
||||
const description = useContext(EngineContext).getRule(dottedName).rawNode
|
||||
.description
|
||||
return (
|
||||
<Condition expression={dottedName}>
|
||||
<li>{description}</li>
|
||||
</Condition>
|
||||
)
|
||||
}
|
||||
|
||||
const ResultLine = styled.div`
|
||||
padding: 10px;
|
||||
font-size: 1.25em;
|
||||
display: flexbox;
|
||||
flex-direction: column;
|
||||
`
|
||||
|
||||
const ResultLabel = styled.div`
|
||||
flex-grow: 1;
|
||||
`
|
||||
|
||||
function CotisationsResult() {
|
||||
const [display, setDisplay] = useState(false)
|
||||
const situation = useSelector(situationSelector)
|
||||
|
||||
if (Object.keys(situation).length && !display) {
|
||||
setDisplay(true)
|
||||
}
|
||||
|
||||
if (!display) {
|
||||
return null
|
||||
}
|
||||
|
||||
return (
|
||||
<Animate.appear>
|
||||
<>
|
||||
<CotisationsParOrganisme />
|
||||
<Condition expression="artiste-auteur . cotisations">
|
||||
<RepartitionCotisations />
|
||||
</Condition>
|
||||
</Animate.appear>
|
||||
</>
|
||||
)
|
||||
}
|
||||
|
||||
function CotisationsParOrganisme() {
|
||||
const cotisIRCEC = useEngine().evaluate(
|
||||
'artiste-auteur . cotisations . IRCEC'
|
||||
)
|
||||
const { description: descriptionIRCEC } = useEngine().getRule(
|
||||
'artiste-auteur . cotisations . IRCEC'
|
||||
).rawNode
|
||||
return (
|
||||
<section>
|
||||
<h2>Vos institutions partenaires</h2>
|
||||
<div className="ui__ box-container">
|
||||
<div className="ui__ card box">
|
||||
<a target="_blank" href="https://www.urssaf.fr/portail/home.html">
|
||||
<LogoImg src={urssafSrc} title="logo Urssaf" />
|
||||
</a>
|
||||
<p className="ui__ notice">
|
||||
Les cotisations recouvrées par l'Urssaf, qui servent au financement
|
||||
de la sécurité sociale (assurance maladie, allocations familiales,
|
||||
dépendance)
|
||||
</p>
|
||||
<p className="ui__ lead">
|
||||
<Value
|
||||
displayedUnit="€"
|
||||
expression="artiste-auteur . cotisations"
|
||||
/>
|
||||
</p>
|
||||
</div>
|
||||
<div className="ui__ card box">
|
||||
<a target="_blank" href="http://www.ircec.fr/">
|
||||
<LogoImg src={ircecSrc} title="logo IRCEC" />
|
||||
</a>
|
||||
<p className="ui__ notice">
|
||||
Si vous êtes artiste-auteur professionnel et que vous êtes rémunéré
|
||||
en droits d’auteur, l’IRCEC est l’organisme de Sécurité sociale qui
|
||||
assure la gestion de votre retraite complémentaire obligatoire.
|
||||
</p>
|
||||
<p className="ui__ lead">
|
||||
<Value
|
||||
displayedUnit="€"
|
||||
expression="artiste-auteur . cotisations . IRCEC"
|
||||
/>
|
||||
</p>
|
||||
</div>
|
||||
<CotisationsUrssaf rule="artiste-auteur . cotisations" />
|
||||
{cotisIRCEC.nodeValue ? (
|
||||
<div className="ui__ card box">
|
||||
<a target="_blank" href="http://www.ircec.fr/">
|
||||
<LogoImg src={ircecSrc} title="logo IRCEC" />
|
||||
</a>
|
||||
<p className="ui__ notice">{descriptionIRCEC}</p>
|
||||
<p className="ui__ lead">
|
||||
<Value
|
||||
displayedUnit="€"
|
||||
expression="artiste-auteur . cotisations . IRCEC"
|
||||
/>
|
||||
</p>
|
||||
</div>
|
||||
) : null}
|
||||
</div>
|
||||
</section>
|
||||
)
|
||||
|
@ -163,13 +111,15 @@ function RepartitionCotisations() {
|
|||
<Trans>À quoi servent mes cotisations ?</Trans>
|
||||
</h2>
|
||||
<div className="distribution-chart__container">
|
||||
{cotisations.map((cotisation) => (
|
||||
<DistributionBranch
|
||||
key={cotisation.dottedName}
|
||||
maximum={maximum}
|
||||
{...cotisation}
|
||||
/>
|
||||
))}
|
||||
{cotisations
|
||||
.filter(({ value }) => Boolean(value))
|
||||
.map((cotisation) => (
|
||||
<DistributionBranch
|
||||
key={cotisation.dottedName}
|
||||
maximum={maximum}
|
||||
{...cotisation}
|
||||
/>
|
||||
))}
|
||||
</div>
|
||||
</section>
|
||||
)
|
||||
|
|
|
@ -200,6 +200,12 @@ const guidesUrssaf = [
|
|||
associatedRule: 'dirigeant . auto-entrepreneur',
|
||||
title: 'Guide Urssaf pour les auto-entrepreneurs',
|
||||
},
|
||||
{
|
||||
url:
|
||||
'http://www.secu-artistes-auteurs.fr/sites/default/files/pdf/Guide%20pratique%20de%20d%C3%A9but%20d%27activit%C3%A9.pdf',
|
||||
associatedRule: "dirigeant = 'artiste-auteur'",
|
||||
title: 'Guide Urssaf pour les artistes-auteurs',
|
||||
},
|
||||
{
|
||||
url:
|
||||
'https://www.urssaf.fr/portail/files/live/sites/urssaf/files/documents/Diaporama_TI_statuts_hors_AE.pdf',
|
||||
|
|
|
@ -2,11 +2,13 @@ situation:
|
|||
dirigeant: "'artiste-auteur'"
|
||||
unité par défaut: €/an
|
||||
objectifs:
|
||||
- artiste-auteur . revenus . traitements et salaires
|
||||
- artiste-auteur . revenus . BNC . recettes
|
||||
- artiste-auteur . revenus . BNC . frais réels
|
||||
- artiste-auteur . cotisations
|
||||
objectifs cachés:
|
||||
- artiste-auteur . revenus
|
||||
- artiste-auteur . cotisations . IRCEC
|
||||
questions:
|
||||
liste:
|
||||
- artiste-auteur . revenus . BNC . micro-bnc
|
||||
- artiste-auteur . cotisations . option surcotisation
|
||||
- artiste-auteur . cotisations . IRCEC . cotisation RAAP . taux réduit
|
||||
- artiste-auteur . cotisations . IRCEC . profession
|
||||
|
|
|
@ -39,12 +39,13 @@ export default function parseBarème(v, context): BarèmeNode {
|
|||
}
|
||||
}
|
||||
|
||||
function evaluateBarème(tranches, assiette, evaluate, cache) {
|
||||
function evaluateBarème(tranches, assiette, evaluate) {
|
||||
return tranches.map((tranche) => {
|
||||
if (tranche.isAfterActive) {
|
||||
return { ...tranche, nodeValue: 0 }
|
||||
}
|
||||
const taux = evaluate(tranche.taux)
|
||||
const missingVariables = mergeAllMissing([taux, tranche])
|
||||
|
||||
if (
|
||||
[
|
||||
|
@ -58,7 +59,7 @@ function evaluateBarème(tranches, assiette, evaluate, cache) {
|
|||
...tranche,
|
||||
taux,
|
||||
nodeValue: null,
|
||||
missingVariables: mergeAllMissing([taux, tranche]),
|
||||
missingVariables,
|
||||
}
|
||||
}
|
||||
return {
|
||||
|
@ -69,7 +70,7 @@ function evaluateBarème(tranches, assiette, evaluate, cache) {
|
|||
(Math.min(assiette.nodeValue, tranche.plafondValue) -
|
||||
tranche.plancherValue) *
|
||||
convertUnit(taux.unit, parseUnit(''), taux.nodeValue as number),
|
||||
missingVariables: mergeAllMissing([taux, tranche]),
|
||||
missingVariables,
|
||||
}
|
||||
})
|
||||
}
|
||||
|
@ -88,8 +89,7 @@ const evaluate: EvaluationFunction<'barème'> = function (node) {
|
|||
liftTemporalNode(multiplicateur as any)
|
||||
)
|
||||
const temporalTranches = liftTemporal2(
|
||||
(tranches, assiette) =>
|
||||
evaluateBarème(tranches, assiette, evaluate, this.cache),
|
||||
(tranches, assiette) => evaluateBarème(tranches, assiette, evaluate),
|
||||
temporalTranchesPlafond,
|
||||
liftTemporalNode(assiette as any)
|
||||
)
|
||||
|
|
Loading…
Reference in New Issue