⚙️ Les questions sont ordonnées par impact

L'impact étant pour l'instant le nombre de citation des ou de la variable
résolues par la question
pull/6/head
mama 2017-05-11 12:04:55 +02:00
parent be583ba2b0
commit 2e8a22ef90
3 changed files with 14 additions and 4 deletions

View File

@ -5,7 +5,7 @@
nom: CDD
titre: Contrat à durée déterminée
description: Contrat de travail pour lequel un employeur peut recruter un salarié pour une durée déterminée, car la cause de cette détermination, de la date ou échéance de fin de contrat est prévue explicitement par le Code du travail.
référence: https://fr.wikipedia.org/wiki/Contrat_de_travail_%C3%A0_dur%C3%A9e_d%C3%A9termin%C3%A9e_en_France
référence: https://fr.wikipedia.org/wiki/Contrat_de_travail_à_durée_déterminée_en_France
# # TODO: règle de type : il faut q'un motif et une durée soient sélectionnés pour qu'un contrat soit un CDD. Cela revient à dire que les variables CDD et motif sont obligatoires *dans le contexte* de leur attache
# implique:
# - emploi temporaire

View File

@ -3,9 +3,14 @@
titre: Événement de contrat
question: Pensez-vous être confronté à l'un de ces événements au cours du contrat ?
description: |
Certains événements impactent fortement les résultats de la simulation, et peuvent donc la racourcir.
Certains événements impactent fortement les obligations du CDD.
> Par exemple, dans l'hypothèse d'une poursuite du CDD en CDI, aucune majoration ou indemnité ne sera à verser !
> Par exemple, dans l'hypothèse d'une poursuite du CDD en CDI, aucune majoration ou indemnité sur le CDD ne sera à verser.
# TODO
# cette règle devrait n'être affichée que quand son espace, CDD, est valide
# CDD devrait être valide seulement si un motif de la liste des possibilités a été choisi
# elle apparaîtrait alors forcément _après_ la question du motif
formule:
une possibilité:
- poursuite du CDD en CDI

View File

@ -83,6 +83,7 @@ let buildNextSteps = analysedSituation => {
)
/*
Parmi les variables manquantes, certaines sont citées dans une règle de type 'une possibilité'.
**On appelle ça des groupes de type 'variante'.**
@ -120,6 +121,7 @@ let buildNextSteps = analysedSituation => {
}),
R.values,
R.unnest,
R.sort((a,b) => b.impact - a.impact),
)(missingVariables)
}
@ -179,7 +181,9 @@ export let generateGridQuestions = missingVariables => R.pipe(
objectives: R.pipe(
R.chain(v => missingVariables[v]),
R.uniq()
)(relevantVariants)
)(relevantVariants),
// Mesure de l'impact de cette variable : combien de fois elle est citée par une règle
impact: relevantVariants.reduce((count, next) => count + missingVariables[next].length, 0)
})
)
)
@ -211,6 +215,7 @@ export let generateSimpleQuestions = missingVariables => R.pipe(
},
{
objectives: missingVariables[dottedName],
impact: missingVariables[dottedName].length
}
)
})