Controllers_ActionsController.js
const CrudController = require("./CrudController");
const ActionsService = require("../Services/ActionsService");
const JsonResponse = require("./JsonResponse");
/**
* @extends Myintranet.Controllers.CrudController
* @memberOf Myintranet.Controllers
* @inheritDoc
*/
class ActionsController extends CrudController {
constructor(db) {
let service = new ActionsService(db);
super(service);
}
/**
* Supprime les plus anciennes action, le nombre d'enregistrements a supprimer est passé dans les params de la route
* @param {*} request
* @param {*} response
*/
deleteByNb(request, response) {
let nbRows = request.params.nb;
if (nbRows && nbRows === "0") {
response.json(
new JsonResponse(
false,
{},
"Veuillez renseigner le nombre de lines a supprimer"
)
);
} else {
this.service
.deleteByNb(request)
.then((data) => {
response.json(new JsonResponse(true, data, ""));
})
.catch((err) => {
response.json(new JsonResponse(false, err, err.message));
});
}
}
/**
* Supprimme toutes les actions de la base de données
* @param {*} request
* @param {*} response
*/
deleteAll(request, response) {
this.service
.deleteAll(request)
.then((data) => {
response.json(new JsonResponse(true, data, ""));
})
.catch((err) => {
response.json(new JsonResponse(false, err, err.message));
});
}
/**
* return les actions pour un prevHisto
* @param {*} request
* @param {*} response
*/
getPrevActions(request, response) {
this.service
.getPrevActions(request)
.then((data) => {
response.json(new JsonResponse(true, data, ""));
})
.catch((err) => {
response.json(new JsonResponse(false, err, err.message));
});
}
/**
* return les actions relatives au Cra
* @param {*} request
* @param {*} response
*/
getCraActions(request, response) {
this.service
.getCraActions(request)
.then((data) => {
response.json(new JsonResponse(true, data, ""));
})
.catch((err) => {
response.json(new JsonResponse(false, err, err.message));
});
}
toDto(data){
return data;
}
toDtoArray(arrayData){
arrayData.data = arrayData.data.map(this.toDto);
return arrayData;
}
/**
* retourn les actions relatives a la mission
* @param {*} request
* @param {*} response
*/
getMissionsActions(request, response) {
// controle the body of the requerst
this.service
.getMissionsActions(request)
.then((data) => {
response.json(new JsonResponse(true, data, ""));
})
.catch((err) => {
response.json(new JsonResponse(false, err, err.message));
});
}
}
module.exports = ActionsController;