const fs = require('fs'); const express = require('express'); const multer = require('multer'); const app = express(); const upload = multer({ dest: 'server/uploads' }); const route = '/servicio'; const nuevo = require('../controller/Servicio/nuevo'); const serviciosAdmin = require('../controller/Servicio/serviciosAdmin'); const serviciosResponsable = require('../controller/Servicio/serviciosResponsable'); const admin = require('../controller/Servicio/admin'); const alumno = require('../controller/Servicio/alumno'); const cancelar = require('../controller/Servicio/cancelar'); const registro = require('../controller/Servicio/registro'); const registroValidado = require('../controller/Servicio/registroValidado'); const cartaTermino = require('../controller/Servicio/cartaTermino'); const informeGlobal = require('../controller/Servicio/informeGlobal'); const liberacion = require('../controller/Servicio/liberacion'); app.post(`${route}/nuevo`, upload.single('cartaAceptacion'), (req, res) => { return nuevo(JSON.parse(req.body.alumno), req.file.filename) .then((data) => { res.status(201).json(data); }) .catch((err) => { if (req.file.filename) fs.unlinkSync(`./server/uploads/${req.file.filename}`); res.status(400).json({ message: err.message }); }); }); app.get(`${route}/servicios_admin`, (req, res) => { return serviciosAdmin(req.query) .then((data) => { res.status(200).json(data); }) .catch((err) => { res.status(400).json({ message: err.message }); }); }); app.get(`${route}/servicios_responsable`, (req, res) => { return serviciosResponsable(req.query) .then((data) => { res.status(200).json(data); }) .catch((err) => { res.status(400).json({ message: err.message }); }); }); app.get(`${route}/admin`, (req, res) => { return admin(req.query) .then((data) => { res.status(200).json(data); }) .catch((err) => { res.status(400).json({ message: err.message }); }); }); app.get(`${route}/alumno`, (req, res) => { return alumno(req.query) .then((data) => { res.status(200).json(data); }) .catch((err) => { res.status(400).json({ message: err.message }); }); }); app.put(`${route}/cancelar`, (req, res) => { return cancelar(req.body) .then((data) => { res.status(200).json(data); }) .catch((err) => { res.status(400).json({ message: err.message }); }); }); app.put(`${route}/registro`, (req, res) => { return registro(req.body) .then((data) => { res.status(200).json(data); }) .catch((err) => { res.status(400).json({ message: err.message }); }); }); app.put(`${route}/registro_validado`, (req, res) => { return registroValidado(req.body) .then((data) => { res.status(200).json(data); }) .catch((err) => { res.status(400).json({ message: err.message }); }); }); app.put(`${route}/carta_termino`, upload.single('cartaTermino'), (req, res) => { return cartaTermino(JSON.parse(req.body.data), req.file.filename) .then((data) => { res.status(200).json(data); }) .catch((err) => { if (req.file.filename) fs.unlinkSync(`./server/uploads/${req.file.filename}`); res.status(400).json({ message: err.message }); }); }); app.put( `${route}/informe_global`, upload.single('informeGlobal'), (req, res) => { return informeGlobal(JSON.parse(req.body.data), req.file.filename) .then((data) => { res.status(200).json(data); }) .catch((err) => { if (req.file.filename) fs.unlinkSync(`./server/uploads/${req.file.filename}`); res.status(400).json({ message: err.message }); }); } ); app.put(`${route}/liberacion`, (req, res) => { return liberacion(req.body) .then((data) => { res.status(200).json(data); }) .catch((err) => { res.status(400).json({ message: err.message }); }); }); module.exports = app;