Skip to content

Commit 8c73af4

Browse files
committed
fix(keynumbers): Use API to sort data instead of UI
1 parent e0fde80 commit 8c73af4

File tree

1 file changed

+34
-34
lines changed

1 file changed

+34
-34
lines changed

src/pages/structures/[id]/chiffres-cles/etudiants.js

Lines changed: 34 additions & 34 deletions
Original file line numberDiff line numberDiff line change
@@ -22,13 +22,13 @@ HCExportingData(Highcharts);
2222

2323
export default function StructureEtudiantsPage() {
2424
const { id, url } = useUrl('keynumbers');
25-
const { data, error, isLoading } = useFetch(`${url}/population`);
25+
const { data, error, isLoading } = useFetch(`${url}/population?sort=annee`);
2626

2727
// eslint-disable-next-line no-nested-ternary
28-
const sortedData = data?.data?.sort((a, b) => ((b.annee > a.annee) ? 1 : ((a.annee > b.annee) ? -1 : 0))) || [];
29-
const lastData = sortedData?.[sortedData.length - 1];
28+
const allData = data?.data || [];
29+
const lastData = allData?.[allData.length - 1];
3030
const year = lastData?.annee_universitaire || '';
31-
const categories = sortedData.map((item) => item.annee);
31+
const categories = allData.map((item) => item.annee);
3232
const commonOptions = {
3333
credits: { enabled: false },
3434
lang: {
@@ -243,7 +243,7 @@ export default function StructureEtudiantsPage() {
243243
...commonOptions,
244244
series: [{
245245
name: lastData?.etablissement_lib || 'Structure sans nom',
246-
data: sortedData.map((item) => item?.effectif || 0),
246+
data: allData.map((item) => item?.effectif || 0),
247247
}],
248248
title: { text: 'Evolution des effectifs' },
249249
};
@@ -253,15 +253,15 @@ export default function StructureEtudiantsPage() {
253253
series: [
254254
{
255255
name: 'Etudiants inscrits en 1er cycle',
256-
data: sortedData.map((item) => item?.cursus_lmdl || 0),
256+
data: allData.map((item) => item?.cursus_lmdl || 0),
257257
},
258258
{
259259
name: 'Etudiants inscrits en 2ème cycle',
260-
data: sortedData.map((item) => item?.cursus_lmdm || 0),
260+
data: allData.map((item) => item?.cursus_lmdm || 0),
261261
},
262262
{
263263
name: 'Etudiants inscrits en 3ème cycle',
264-
data: sortedData.map((item) => item?.cursus_lmdd || 0),
264+
data: allData.map((item) => item?.cursus_lmdd || 0),
265265
},
266266
],
267267
title: { text: 'Évolution des effectifs par cycle' },
@@ -272,23 +272,23 @@ export default function StructureEtudiantsPage() {
272272
series: [
273273
{
274274
name: 'Etudiants inscrits en Droit, sciences économiques, AES',
275-
data: sortedData.map((item) => item?.gd_discisciplinedsa || 0),
275+
data: allData.map((item) => item?.gd_discisciplinedsa || 0),
276276
},
277277
{
278278
name: 'Etudiants inscrits en Lettres, langues et sciences humaines',
279-
data: sortedData.map((item) => item?.gd_discisciplinellsh || 0),
279+
data: allData.map((item) => item?.gd_discisciplinellsh || 0),
280280
},
281281
{
282282
name: 'Etudiants inscrits en Sciences et sciences de l\'ingénieur',
283-
data: sortedData.map((item) => item?.gd_discisciplinesi || 0),
283+
data: allData.map((item) => item?.gd_discisciplinesi || 0),
284284
},
285285
{
286286
name: 'Etudiants inscrits en STAPS',
287-
data: sortedData.map((item) => item?.gd_discisciplinestaps || 0),
287+
data: allData.map((item) => item?.gd_discisciplinestaps || 0),
288288
},
289289
{
290290
name: 'Etudiants inscrits en Santé',
291-
data: sortedData.map((item) => item?.gd_discisciplinesante || 0),
291+
data: allData.map((item) => item?.gd_discisciplinesante || 0),
292292
},
293293
],
294294
title: { text: 'Évolution des effectifs par discipline' },
@@ -299,23 +299,23 @@ export default function StructureEtudiantsPage() {
299299
series: [
300300
{
301301
name: 'Etudiants inscrits préparant un diplôme universitaire de technologie',
302-
data: sortedData.map((item) => item?.diplomedut || 0),
302+
data: allData.map((item) => item?.diplomedut || 0),
303303
},
304304
{
305305
name: 'Etudiants inscrits en Licence',
306-
data: sortedData.map((item) => item?.diplomelic_l_aut || 0),
306+
data: allData.map((item) => item?.diplomelic_l_aut || 0),
307307
},
308308
{
309309
name: 'Etudiants inscrits en Master',
310-
data: sortedData.map((item) => (item?.diplomemast_m_autres || 0) + (item?.diplomemast_m_enseignement || 0)),
310+
data: allData.map((item) => (item?.diplomemast_m_autres || 0) + (item?.diplomemast_m_enseignement || 0)),
311311
},
312312
{
313313
name: 'Etudiants inscrits en formations d\'ingénieurs',
314-
data: sortedData.map((item) => item?.diplomeing || 0),
314+
data: allData.map((item) => item?.diplomeing || 0),
315315
},
316316
{
317317
name: 'Etudiants inscrits en Doctorat',
318-
data: sortedData.map((item) => item?.diplomehdr || 0),
318+
data: allData.map((item) => item?.diplomehdr || 0),
319319
},
320320
],
321321
title: { text: 'Évolution des effectifs dans les principaux diplômes' },
@@ -326,39 +326,39 @@ export default function StructureEtudiantsPage() {
326326
series: [
327327
{
328328
name: 'Etudiants inscrits préparant un diplôme d\'accès aux études universitaires',
329-
data: sortedData.map((item) => item?.diplomedaeu || 0),
329+
data: allData.map((item) => item?.diplomedaeu || 0),
330330
},
331331
{
332332
name: 'Etudiants inscrits en Capacité en droit',
333-
data: sortedData.map((item) => item?.diplomecapa || 0),
333+
data: allData.map((item) => item?.diplomecapa || 0),
334334
},
335335
{
336336
name: 'Etudiants inscrits en Licence professionnelle',
337-
data: sortedData.map((item) => item?.diplomelic_pro || 0),
337+
data: allData.map((item) => item?.diplomelic_pro || 0),
338338
},
339339
{
340340
name: 'Etudiants inscrits en Master enseignement (dont)',
341-
data: sortedData.map((item) => item?.diplomemast_m_enseignement || 0),
341+
data: allData.map((item) => item?.diplomemast_m_enseignement || 0),
342342
},
343343
{
344344
name: 'Etudiants inscrits en PACES',
345-
data: sortedData.map((item) => item?.diplomesante_paces || 0),
345+
data: allData.map((item) => item?.diplomesante_paces || 0),
346346
},
347347
{
348348
name: 'Etudiants inscrits dans les formations paramédicales',
349-
data: sortedData.map((item) => item?.diplomesante_paramedical || 0),
349+
data: allData.map((item) => item?.diplomesante_paramedical || 0),
350350
},
351351
{
352352
name: 'Etudiants inscrits dans les autres formations de santé',
353-
data: sortedData.map((item) => item?.diplomesante_autres_form || 0),
353+
data: allData.map((item) => item?.diplomesante_autres_form || 0),
354354
},
355355
{
356356
name: 'Etudiants inscrits en HDR',
357-
data: sortedData.map((item) => item?.diplomehdr || 0),
357+
data: allData.map((item) => item?.diplomehdr || 0),
358358
},
359359
{
360360
name: 'Etudiants inscrits dans les diplômes d\'établissement',
361-
data: sortedData.map((item) => item?.diplomeautres_form || 0),
361+
data: allData.map((item) => item?.diplomeautres_form || 0),
362362
},
363363
],
364364
title: { text: 'Évolution des effectifs dans d\'autres types de diplômes' },
@@ -368,7 +368,7 @@ export default function StructureEtudiantsPage() {
368368
...commonOptions,
369369
legend: { enabled: false },
370370
series: [{
371-
data: sortedData.map((item) => ((item?.mobilite_internm || 0) / item.effectif) * 100),
371+
data: allData.map((item) => ((item?.mobilite_internm || 0) / item.effectif) * 100),
372372
}],
373373
title: { text: 'Évolution de la part des étudiants inscrits en mobilité internationale (en %)' },
374374
tooltip: {
@@ -382,13 +382,13 @@ export default function StructureEtudiantsPage() {
382382
...commonOptions,
383383
series: [{
384384
name: 'Nouveaux bacheliers issus d\'un bac général',
385-
data: sortedData.map((item) => ((item?.nbaca || 0) / item.nouv_bachelier) * 100),
385+
data: allData.map((item) => ((item?.nbaca || 0) / item.nouv_bachelier) * 100),
386386
}, {
387387
name: 'Nouveaux bacheliers issus d\'un bac technologique',
388-
data: sortedData.map((item) => (((item?.nouv_bachelier || 0) - ((item?.nbaca || 0) + (item?.nbac6 || 0))) / item.nouv_bachelier) * 100),
388+
data: allData.map((item) => (((item?.nouv_bachelier || 0) - ((item?.nbaca || 0) + (item?.nbac6 || 0))) / item.nouv_bachelier) * 100),
389389
}, {
390390
name: 'Nouveaux bacheliers issus d\'un bac professionnel',
391-
data: sortedData.map((item) => ((item?.nbac6 || 0) / item.nouv_bachelier) * 100),
391+
data: allData.map((item) => ((item?.nbac6 || 0) / item.nouv_bachelier) * 100),
392392
}],
393393
title: { text: 'Répartitions des nouveaux bacheliers (en %)' },
394394
tooltip: {
@@ -402,13 +402,13 @@ export default function StructureEtudiantsPage() {
402402
...commonOptions,
403403
series: [{
404404
name: 'Nouveaux bacheliers en avance au bac d\'un an ou plus',
405-
data: sortedData.map((item) => ((item?.nbac_ageavance || 0) / item.nouv_bachelier) * 100),
405+
data: allData.map((item) => ((item?.nbac_ageavance || 0) / item.nouv_bachelier) * 100),
406406
}, {
407407
name: 'Nouveaux bacheliers à l\'heure au bac',
408-
data: sortedData.map((item) => ((item?.nbac_agea_l_heure || 0) / item.nouv_bachelier) * 100),
408+
data: allData.map((item) => ((item?.nbac_agea_l_heure || 0) / item.nouv_bachelier) * 100),
409409
}, {
410410
name: 'Nouveaux bacheliers en retard au bac d\'un an ou plus',
411-
data: sortedData.map((item) => ((item?.nbac_ageretard || 0) / item.nouv_bachelier) * 100),
411+
data: allData.map((item) => ((item?.nbac_ageretard || 0) / item.nouv_bachelier) * 100),
412412
}],
413413
title: { text: 'Âge au bac des nouveaux bacheliers (en %)' },
414414
tooltip: {

0 commit comments

Comments
 (0)