1
0
Fork 0
mirror of https://github.com/betagouv/mon-entreprise synced 2025-02-09 22:45:01 +00:00
mon-entreprise/source/components/CDD.js
Mael Thomas 7fdace0d27 [moteur][cdd] Les cotisations du CDD font appel aux indemnités; nouveau méca. somme
Leur base de calcul est l'assiette des cotisations sociales, qui inclut les indemnités.
Une variable d'objectif peut donc appeler le calcul d'une autre variable ayant une formule (plutôt que simplement des variables d'entrée).
[moteur] à refactorer.
On en profite pour que la simulation parte d'une variable unique, somme d'autres variables.
--> introduction du mécanisme 'somme'
2017-03-17 12:00:52 +01:00

59 lines
1.7 KiB
JavaScript

import React, {Component} from 'react'
import './CDD.css'
import Results from './Results'
import {reduxForm, formValueSelector} from 'redux-form'
import {connect} from 'react-redux'
import './conversation/conversation.css'
import {START_CONVERSATION} from '../actions'
import Aide from './Aide'
import PageTypeIcon from './PageTypeIcon'
let situationSelector = formValueSelector('conversation')
@reduxForm({form: 'conversation', destroyOnUnmount: false})
@connect(
state => ({
situation: variableName => situationSelector(state, variableName),
steps: state.submittedSteps.concat(state.steps),
themeColours: state.themeColours,
analysedSituation: state.analysedSituation,
}),
dispatch => ({
startConversation: () => dispatch({type: START_CONVERSATION}),
}),
)
export default class CDD extends Component {
componentDidMount() {
// C'est ici que la génération du formulaire, et donc la traversée des variables commence
this.props.startConversation()
}
render() {
let {steps, situation} = this.props
let conversation = steps.map(step => (
<step.component key={step.name} {...step} step={step} answer={situation(step.name)}/>
))
return (
<div id="sim">
<PageTypeIcon type="simulation" />
<h1>Simulateur CDD</h1>
<div id="conversation">
<section id="questions-answers">
{conversation}
</section>
<Aide />
</div>
<Results {...this.props} />
</div>
)
}
}
/* TODO Problèmes à résoudre :
- exprimer la justification du CDD d'usage au delà des secteurs.
" l'usage exclut le recours au CDI en raison de la nature de l'activité et du caractère temporaire de ces emplois."
+ interdictions explicites (grève et travaux dangereux)
*/