diff --git a/source/components/simulationConfigs/indépendant.yaml b/source/components/simulationConfigs/indépendant.yaml index a0adf9803..23b76ced9 100644 --- a/source/components/simulationConfigs/indépendant.yaml +++ b/source/components/simulationConfigs/indépendant.yaml @@ -23,6 +23,9 @@ questions: - entreprise . charges non prioritaires: - entreprise . catégorie d'activité . débit de tabac + - entreprise . ZFU + - dirigeant . indépendant . cotisations et contributions . exonérations . âge + - dirigeant . indépendant . cotisations et contributions . exonérations . invalidité situation: dirigeant: 'indépendant' diff --git a/source/engine/evaluateRule.js b/source/engine/evaluateRule.js index 143b3cbba..183e10913 100644 --- a/source/engine/evaluateRule.js +++ b/source/engine/evaluateRule.js @@ -35,6 +35,7 @@ export const evaluateApplicability = ( : mergeAll([ ...parentDependencies.map(parent => parent.missingVariables), notApplicable?.missingVariables || {}, + disabled?.missingVariables || {}, applicable?.missingVariables || {} ]) @@ -81,9 +82,7 @@ export default (cache, situationGate, parsedRules, node) => { formulaMissingVariables ) cache.parseLevel-- - if (node.dottedName.startsWith('sum')) { - // console.log(node.dottedName, missingVariables, node) - } + return { ...node, ...applicabilityEvaluation, diff --git a/source/engine/parseRule.js b/source/engine/parseRule.js index 8b76a464a..05a716b15 100644 --- a/source/engine/parseRule.js +++ b/source/engine/parseRule.js @@ -6,7 +6,7 @@ import { parse } from 'Engine/parse' import { evolve, map } from 'ramda' import React from 'react' import { coerceArray } from '../utils' -import { evaluateNode, makeJsx } from './evaluation' +import { evaluateNode, makeJsx, mergeAllMissing } from './evaluation' import { Node } from './mecanismViews/common' import { disambiguateRuleReference, findParentDependencies } from './rules' @@ -136,7 +136,12 @@ export default (rules, rule, parsedRules) => { ) const nodeValue = isDisabledBy.some(x => !!x.nodeValue) const explanation = { ...node.explanation, isDisabledBy } - return { ...node, explanation, nodeValue } + return { + ...node, + explanation, + nodeValue, + missingVariables: mergeAllMissing(isDisabledBy) + } }, jsx: (nodeValue, { isDisabledBy }) => { return ( diff --git a/source/règles/base.yaml b/source/règles/base.yaml index 7d0a94efc..36777f606 100644 --- a/source/règles/base.yaml +++ b/source/règles/base.yaml @@ -3798,7 +3798,6 @@ dirigeant . rattachement CIPAV: références: article de loi (chercher "travailleurs indépendants créant leur activité"): https://www.legifrance.gouv.fr/eli/loi/2017/12/30/CPAX1725580L/jo/texte#JORFARTI000036339157 note: pour l'instant, nous n'avons retenu que la CIPAV pour les calculs - non applicable si: indépendant . PLNR régime général formule: une de ces conditions: - toutes ces conditions: @@ -3828,6 +3827,7 @@ dirigeant . indépendant . PLNR régime général: - entreprise . date de création < 2019 question: Avez-vous opté pour le rattachement au régime général des indépendant ? description: En tant que profession libéral non reglementée, vous pouvez choisir d'être rattaché au régime général plutôt que la CIPAV + rend non applicable: rattachement CIPAV par défaut: non ? dirigeant . rattachement CIPAV . maladie @@ -4169,9 +4169,10 @@ entreprise . ZFU: dirigeant . indépendant . cotisations et contributions . exonérations: dirigeant . indépendant . cotisations et contributions . exonérations . ZFU: période: aucune - applicable si: entreprise . date de création < 2015 - non applicable si: rattachement CIPAV - formule: entreprise . ZFU = oui + applicable si: + toutes ces conditions: + - entreprise . date de création < 2015 + - entreprise . ZFU remplace: règle: cotisations . maladie par: taux * cotisations . maladie @@ -4182,8 +4183,16 @@ dirigeant . indépendant . cotisations et contributions . exonérations . âge: applicable si: entreprise . date de création < 2016 par défaut: non -dirigeant . indépendant . cotisations et contributions . exonérations . âge . effet: - applicable si: âge +dirigeant . indépendant . cotisations et contributions . exonérations . invalidité: + question: Êtes-vous titulaire d’une pension d’invalidité ? + description: Les personnes titulaires d’une pension d’invalidité versée par un régime des travailleurs non-salariés non agricoles bénéficient d’une exonération totale des cotisations maladie et retraite complémentaire. + par défaut: non + rend non applicable: + - cotisations . maladie + - cotisations . indemnités journalières maladie + - cotisations . retraite complémentaire + + situation personnelle . IJSS: titre: indemnités journalières de sécurité sociale