personnal/ecole/src copy/controllers/parcoursController.js

51 lines
2.0 KiB
JavaScript

const express = require('express');
const router = express.Router();
const renderPage = require('../utils/renderHelper');
const logger = require('../utils/logger');
const parcoursService = require('../services/parcoursService');
const userService = require('../services/userService');
const globalService = require('../services/globalService');
// Route init
router.get('/', (req, res) => {
renderPage('parcours.ejs', res);
});
// Route pour récupérer les informations du parcours à partir d'un numéro de parcours
router.post('/create/:matricule', async (req, res) => {
const matricule = req.params.matricule.toUpperCase();
const idUser = await globalService.getRecordIdFromFieldValue("utilisateur", "matricule", matricule);
const numParcours = await parcoursService.getNewParcoursNumber();
const idParcours = await parcoursService.createNewEmptyParcours(numParcours);
await parcoursService.updateFieldValueParcours(idParcours, "dernierUtilisateur", idUser);
res.json({ valid: Boolean(numParcours), numParcours });
});
// Route pour récupérer les informations du parcours à partir d'un numéro de parcours
router.get('/read/:numParcours', async (req, res) => {
const numParcours = req.params.numParcours.toUpperCase();
const parcours = await parcoursService.getParcoursByNumParcours(numParcours);
const admins = await userService.getUsersByAuthGroupe("ADMIN");
if (parcours) {
res.json({ valid: true, parcours });
} else {
res.json({ valid: false, admins });
}
});
// Route pour modifier l'id contrat dans le parcours
router.post('/update/:numParcours/:idContrat', async (req, res) => {
const numParcours = req.params.numParcours.toUpperCase();
const idContrat = req.params.idContrat;
const data = { "contrat": idContrat };
const idParcours = await globalService.getRecordIdFromFieldValue("parcours", "numParcours", numParcours);
const record = await globalService.updateRecordFromData("parcours", idParcours, data);
res.json({ valid: Boolean(record) });
});
module.exports = router;