Skip to content

Commit

Permalink
Supprimer les valeurs par défaut sur les pages simples (#1556)
Browse files Browse the repository at this point in the history
  • Loading branch information
LucasCharrier committed Apr 1, 2021
1 parent e5badee commit 7170ea8
Show file tree
Hide file tree
Showing 11 changed files with 34 additions and 440 deletions.
400 changes: 0 additions & 400 deletions app/js/constants/ressources.js

This file was deleted.

4 changes: 2 additions & 2 deletions backend/lib/definitions.js
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
var concat = require('lodash/concat')

var ressources = require('../../app/js/constants/ressources');
var ressources = require('../../src/constants/resources');

var famille = {
en_couple: Boolean,
Expand Down Expand Up @@ -58,7 +58,7 @@ var individu = Object.assign({
_firstName: String,
_interetPermisDeConduire: Boolean,
garde_alternee: Boolean,
gir: { type: String, default: 'non_defini' },
gir: String,
habite_chez_parents: Boolean,
handicap: Boolean,
_hasRessources: Boolean,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ var moment = require('moment');

var common = require('../common');
var individuRessources = require('./ressources');
var ressources = require('../../../../../app/js/constants/ressources');
var ressources = require('../../../../../src/constants/resources');

var ressourcesToDuplicate = concat(
Object.keys(individuRessources.computedRessources),
Expand Down
11 changes: 5 additions & 6 deletions cypress/support/index.js
Original file line number Diff line number Diff line change
Expand Up @@ -39,7 +39,7 @@ export function demandeur(params={}) {
cy.get('button[type="submit"]').click()
// Nationalite
cy.get('legend').invoke('text').should('contain', 'nationalité')
cy.get('button[type="submit"]').click()
cy.get('input[type="radio"]').check('fr')
// Activite
cy.get('legend').invoke('text').should('contain', 'Êtes-vous')
cy.get('label').invoke('text').should('contain', 'En activité')
Expand All @@ -61,7 +61,7 @@ export function handicap(params) {
if (!params.enfant && 0.5 < params.handicap.taux_incapacite && params.handicap.taux_incapacite <= 0.8) {
// AAH
cy.get('legend').invoke('text').should('contain', `CDAPH`)
cy.get('button[type="submit"]').click()
cy.get('input[type="radio"]').check('true')
}
} else {
cy.get('input[type="radio"]').check('false')
Expand Down Expand Up @@ -93,11 +93,10 @@ export function conjoint(params={}) {
cy.get('button[type="submit"]').click()
// Nationalite
cy.get('legend').invoke('text').should('contain', 'nationalité')
cy.get('button[type="submit"]').click()
cy.get('input[type="radio"]').check('fr')
// Statut Marital
cy.get('legend').invoke('text').should('contain', 'Quelle est votre relation avec votre conjoint')
cy.get('input[type="radio"]').check('marie')
cy.get('button[type="submit"]').click()
// Activite
cy.get('legend').invoke('text').should('contain', 'est-il/elle')
cy.get('label').invoke('text').should('contain', 'En activité')
Expand All @@ -119,7 +118,7 @@ export function enfant(params={}) {
cy.get('button[type="submit"]').click()
// Nationalite
cy.get('legend').invoke('text').should('contain', 'nationalité')
cy.get('button[type="submit"]').click() // Nationalité
cy.get('input[type="radio"]').check('fr')
// Garde Alterne
cy.get('legend').invoke('text').should('contain', 'en garde alternée')
cy.get('input[type="radio"]').check('true')
Expand All @@ -131,7 +130,7 @@ export function enfant(params={}) {
cy.get('input[type="radio"]').check('college')
// Enfant a charge
cy.get('legend').invoke('text').should('contain', 'dernière déclaration d\'impôts')
cy.get('button[type="submit"]').click()
cy.get('input[type="radio"]').check('false')
}

export function celibataire() {
Expand Down
6 changes: 3 additions & 3 deletions src/constants/resources.js
Original file line number Diff line number Diff line change
Expand Up @@ -291,14 +291,14 @@ let ressourceTypes = [
label: 'Via une micro-entreprise',
category: 'rpns',
isMontantAnnuel: true,
extra: ['tns_micro_entreprise_type_activite']
extra: [{ id: 'tns_micro_entreprise_type_activite', default: 'bic' }]
},
{
id: 'tns_auto_entrepreneur_chiffre_affaires',
label: 'En tant qu\'auto-entrepreneur',
category: 'rpns',
interuptionQuestionLabel: 'un chiffre d’affaires non nul',
extra: ['tns_auto_entrepreneur_type_activite']
extra: [{ id: 'tns_auto_entrepreneur_type_activite', default: 'bic' }]
},
{
id: 'tns_benefice_exploitant_agricole',
Expand All @@ -311,7 +311,7 @@ let ressourceTypes = [
label: 'En profession libérale (entrepreneur)',
category: 'rpns',
isMontantAnnuel: true,
extra: ['tns_autres_revenus_type_activite']
extra: [{ id: 'tns_autres_revenus_type_activite', default: 'bic' }]
}
];

Expand Down
24 changes: 2 additions & 22 deletions src/lib/Individu.js
Original file line number Diff line number Diff line change
Expand Up @@ -28,37 +28,17 @@ function getConjoint() {
return get([], 'conjoint').individu
}

function get(individus, role, id, dates) {
function get(individus, role, id) {
let DEFAULT_INDIVIDU = {
id: role,
aah_restriction_substantielle_durable_acces_emploi: true,
agepi_temps_travail_semaine: 0,
ass_precondition_remplie: false,
classe_scolarite: undefined,
date_naissance: undefined,
duree_possession_titre_sejour: 25,
echelon_bourse: -1,
enfant_a_charge: {},
enfant_place: false,
gir: 'gir_6',
nationalite: 'FR',
nationalite: undefined,
_role: role,
scolarite: undefined,
taux_incapacite: 0.9,
tns_autres_revenus_type_activite: 'bic',
tns_micro_entreprise_type_activite: 'bic',
tns_auto_entrepreneur_type_activite: 'bic',
};

// By default enfants are `à charge fiscale`, adults are not.
if (DEFAULT_INDIVIDU._role == 'enfant' && dates && dates.thisYear) {
DEFAULT_INDIVIDU.enfant_a_charge[dates.thisYear.id] = true
}

// Required on DEFAULT_INDIVIDU to properly restore statut_marital
if (DEFAULT_INDIVIDU._role == 'conjoint') {
DEFAULT_INDIVIDU.statut_marital = 'marie'; // Marié(e)
}
let existingIndividu = find(individus, role, id);
let individu = {
...cloneDeep(DEFAULT_INDIVIDU),
Expand Down
4 changes: 3 additions & 1 deletion src/lib/Nationality.js
Original file line number Diff line number Diff line change
Expand Up @@ -49,7 +49,9 @@ function getNationalityFromCountryCode (countryCode) {
}

function getZone(countryCode) {

if (!countryCode) {
return ''
}
countryCode = countryCode.toUpperCase();

if (countryCode === 'FR') {
Expand Down
13 changes: 13 additions & 0 deletions src/lib/Ressource.js
Original file line number Diff line number Diff line change
Expand Up @@ -41,6 +41,12 @@ function setDefaultValueForCurrentYear(dates, individu, ressourceType) {
return;
}

if (ressourceType.extra) {
ressourceType.extra.forEach(e => {
individu[e.id] = individu[e.id] || e.default
})
}

periodKeys.forEach(function(periodKey) {
ressource[periodKey] = ressource[periodKey] || null;
});
Expand All @@ -54,6 +60,13 @@ function unsetForCurrentYear(dates, entity, ressourceType) {
periodKeys.forEach(function(periodKey) {
delete ressource[periodKey]
});

if (ressourceType.extra) {
ressourceType.extra.forEach(e => {
delete entity[e.id]
})
}

if (!ressource || Object.keys(ressource).length === 0) {
delete entity[ressourceId]
}
Expand Down
4 changes: 2 additions & 2 deletions src/mixins/RessourceProcessor.js
Original file line number Diff line number Diff line change
Expand Up @@ -73,7 +73,7 @@ export default {

const extras = t.meta.extra || []
extras.forEach(e => {
updatedRessources[e] = t.extra[e]
updatedRessources[e.id] = t.extra[e.id]
})
})
this.$store.dispatch('updateIndividu', Object.assign({}, this.types[0].individu, updatedRessources))
Expand All @@ -87,7 +87,7 @@ export default {

const extras = t.meta.extra || []
extras.forEach(e => {
updatedRessources[e] = t.extra[e]
updatedRessources[e.id] = t.extra[e.id]
})

this.$store.dispatch('updateIndividu', Object.assign({}, t.individu, updatedRessources))
Expand Down
2 changes: 1 addition & 1 deletion src/views/Simulation/Ressources/Enfants.vue
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ export default {
data: function() {
let enfants = this.$store.state.situation.enfants.map(e => Object.assign({}, e))
enfants.forEach(e => e._hasRessources = e._hasRessources || false)
enfants.forEach(e => e._hasRessources = e._hasRessources || undefined)
return {
enfants,
}
Expand Down
4 changes: 2 additions & 2 deletions src/views/Simulation/Ressources/Montants.vue
Original file line number Diff line number Diff line change
Expand Up @@ -44,7 +44,7 @@ export default {
const individu = this.getIndividu()
return {
individu,
types: this.getTypes(individu)
types: this.getTypes(individu),
}
},
watch: {
Expand Down Expand Up @@ -79,7 +79,7 @@ export default {
displayMonthly: this.getDisplayMonthly(months, amounts),
meta: type,
extra: (type.extra || []).reduce((a, e) => {
a[e] = individu[e]
a[e.id] = individu[e.id]
return a
}, {})
})
Expand Down

0 comments on commit 7170ea8

Please sign in to comment.