Skip to content

Commit

Permalink
fix: amélioration du continuum
Browse files Browse the repository at this point in the history
  • Loading branch information
K4ST0R committed Feb 6, 2025
1 parent 5039081 commit 85ca4cb
Showing 1 changed file with 22 additions and 9 deletions.
31 changes: 22 additions & 9 deletions server/src/jobs/bcn/computeBCNMEFContinuum.js
Original file line number Diff line number Diff line change
Expand Up @@ -51,17 +51,26 @@ async function updateDiplomeList(data) {
return { isModified, res, resOldDiplome, resNewDiplome };
}

async function getMefFromCfd(cfd, parentMef) {
async function getMefFromCfd(cfd, parentMef, parentCfd) {
const result = await BCNMefRepository.find({
formation_diplome: cfd,
dispositif_formation: parentMef.dispositif_formation,
})
.then((stream) => toArray(stream))
.then((result) =>
result.find(({ mef_stat_11 }) => mef_stat_11.substr(0, 4) === parentMef.mef_stat_11.substr(0, 4))
}).then((stream) => toArray(stream));

if (result.length === 1) {
// Vérifie que le CFD du parent ne renvoi qu'un seul mef
const resultParent = await BCNMefRepository.find({ formation_diplome: parentCfd.code_formation_diplome }).then(
(stream) => toArray(stream)
);
if (resultParent.length === 1) {
return result[0];
}
}

const resultByDispositif = result
.filter((result) => result.dispositif_formation === parentMef.dispositif_formation)
.find(({ mef_stat_11 }) => mef_stat_11.substr(0, 4) === parentMef.mef_stat_11.substr(0, 4));

return result;
return resultByDispositif;
}

export async function computeBCNMEFContinuum() {
Expand All @@ -81,10 +90,14 @@ export async function computeBCNMEFContinuum() {
}

// Get old MEFs
const oldMefs = await Promise.all(diplomeCfd.ancien_diplome.map((oldCfd) => getMefFromCfd(oldCfd, diplomeMef)));
const oldMefs = await Promise.all(
diplomeCfd.ancien_diplome.map((oldCfd) => getMefFromCfd(oldCfd, diplomeMef, diplomeCfd))
);

// Get new MEFs
const newMefs = await Promise.all(diplomeCfd.nouveau_diplome.map((newCfd) => getMefFromCfd(newCfd, diplomeMef)));
const newMefs = await Promise.all(
diplomeCfd.nouveau_diplome.map((newCfd) => getMefFromCfd(newCfd, diplomeMef, diplomeCfd))
);

const newData = {
code_certification: data.code_certification,
Expand Down

0 comments on commit 85ca4cb

Please sign in to comment.