257 lines
7.2 KiB
JavaScript
257 lines
7.2 KiB
JavaScript
const express = require('express');
|
|
const multer = require('multer');
|
|
const app = express();
|
|
const upload = multer({ dest: 'server/uploads' });
|
|
const { verificaToken } = require('../middleware/autentificacion');
|
|
const { eliminarArchivo } = require('../helper/helper');
|
|
const route = '/servicio';
|
|
const controllerPath = '../controller/Servicio';
|
|
const nuevo = require(`${controllerPath}/nuevo`);
|
|
const serviciosAdmin = require(`${controllerPath}/serviciosAdmin`);
|
|
const serviciosResponsable = require(`${controllerPath}/serviciosResponsable`);
|
|
const admin = require(`${controllerPath}/admin`);
|
|
const alumno = require(`${controllerPath}/alumno`);
|
|
const cancelar = require(`${controllerPath}/cancelar`);
|
|
const registro = require(`${controllerPath}/registro`);
|
|
const registroValidado = require(`${controllerPath}/registroValidado`);
|
|
const cartaAceptacion = require(`${controllerPath}/cartaAceptacion`);
|
|
const cartaTermino = require(`${controllerPath}/cartaTermino`);
|
|
const informeGlobal = require(`${controllerPath}/informeGlobal`);
|
|
const liberacion = require(`${controllerPath}/liberacion`);
|
|
const rechazarAceptacion = require(`${controllerPath}/rechazarAceptacion`);
|
|
const rechazarTermino = require(`${controllerPath}/rechazarTermino`);
|
|
const rechazarInforme = require(`${controllerPath}/rechazarInforme`);
|
|
const update = require(`${controllerPath}/update`);
|
|
const reporte = require(`${controllerPath}/reporte`);
|
|
const gustavoBazPrada = require(`${controllerPath}/gustavoBazPrada`);
|
|
|
|
// POST
|
|
app.post(
|
|
`${route}/nuevo`,
|
|
// verificaToken,
|
|
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) eliminarArchivo(req.file.filename);
|
|
res.status(400).json({ message: err.message });
|
|
});
|
|
}
|
|
);
|
|
|
|
// GET
|
|
app.get(`${route}/admin`, verificaToken, (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`, verificaToken, (req, res) => {
|
|
return alumno(req.query)
|
|
.then((data) => {
|
|
res.status(200).json(data);
|
|
})
|
|
.catch((err) => {
|
|
res.status(400).json({ message: err.message });
|
|
});
|
|
});
|
|
|
|
app.get(`${route}/gustavo_baz_prada`, verificaToken, (req, res) => {
|
|
return gustavoBazPrada(req.query)
|
|
.then((data) => {
|
|
res.download(data);
|
|
})
|
|
.catch((err) => {
|
|
res.status(400).json({ message: err.message });
|
|
});
|
|
});
|
|
|
|
app.get(`${route}/reporte`, verificaToken, (req, res) => {
|
|
return reporte(req.query)
|
|
.then((data) => {
|
|
res.download(data);
|
|
})
|
|
.catch((err) => {
|
|
res.status(400).json({ message: err.message });
|
|
});
|
|
});
|
|
|
|
app.get(`${route}/servicios_admin`, verificaToken, (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`, verificaToken, (req, res) => {
|
|
return serviciosResponsable(req.query)
|
|
.then((data) => {
|
|
res.status(200).json(data);
|
|
})
|
|
.catch((err) => {
|
|
res.status(400).json({ message: err.message });
|
|
});
|
|
});
|
|
|
|
// PUT
|
|
app.put(`${route}/cancelar`, verificaToken, (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}/carta_aceptacion`,
|
|
// verificaToken,
|
|
upload.single('cartaAceptacion'),
|
|
(req, res) => {
|
|
return cartaAceptacion(JSON.parse(req.body.data), req.file.filename)
|
|
.then((data) => {
|
|
res.status(200).json(data);
|
|
})
|
|
.catch((err) => {
|
|
if (req.file.filename) eliminarArchivo(req.file.filename);
|
|
res.status(400).json({ message: err.message });
|
|
});
|
|
}
|
|
);
|
|
|
|
app.put(
|
|
`${route}/carta_termino`,
|
|
// verificaToken,
|
|
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) eliminarArchivo(req.file.filename);
|
|
res.status(400).json({ message: err.message });
|
|
});
|
|
}
|
|
);
|
|
|
|
app.put(
|
|
`${route}/informe_global`,
|
|
// verificaToken,
|
|
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) eliminarArchivo(req.file.filename);
|
|
res.status(400).json({ message: err.message });
|
|
});
|
|
}
|
|
);
|
|
|
|
app.put(`${route}/liberacion`, verificaToken, (req, res) => {
|
|
return liberacion(req.body)
|
|
.then((data) => {
|
|
res.status(200).json(data);
|
|
})
|
|
.catch((err) => {
|
|
res.status(400).json({ message: err.message });
|
|
});
|
|
});
|
|
|
|
app.put(`${route}/registro`, verificaToken, (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`, verificaToken, (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}/rechazar_aceptacion`, verificaToken, (req, res) => {
|
|
return rechazarAceptacion(req.body)
|
|
.then((data) => {
|
|
res.status(200).json(data);
|
|
})
|
|
.catch((err) => {
|
|
res.status(400).json({ message: err.message });
|
|
});
|
|
});
|
|
|
|
app.put(`${route}/rechazar_informe`, verificaToken, (req, res) => {
|
|
return rechazarInforme(req.body)
|
|
.then((data) => {
|
|
res.status(200).json(data);
|
|
})
|
|
.catch((err) => {
|
|
res.status(400).json({ message: err.message });
|
|
});
|
|
});
|
|
|
|
app.put(`${route}/rechazar_termino`, verificaToken, (req, res) => {
|
|
return rechazarTermino(req.body)
|
|
.then((data) => {
|
|
res.status(200).json(data);
|
|
})
|
|
.catch((err) => {
|
|
res.status(400).json({ message: err.message });
|
|
});
|
|
});
|
|
|
|
app.put(
|
|
`${route}/update`,
|
|
// verificaToken ,
|
|
upload.fields([
|
|
{ name: 'cartaAceptacion', maxCount: 1 },
|
|
{ name: 'cartaTermino', maxCount: 1 },
|
|
{ name: 'informeGlobal', maxCount: 1 },
|
|
]),
|
|
(req, res) => {
|
|
return update(JSON.parse(req.body.data), req.files)
|
|
.then((data) => {
|
|
res.status(200).json(data);
|
|
})
|
|
.catch((err) => {
|
|
try {
|
|
if (req.files['cartaAceptacion'][0].filename)
|
|
eliminarArchivo(req.files['cartaAceptacion'][0].filename);
|
|
} catch (err) {}
|
|
try {
|
|
if (req.files['cartaTermino'][0].filename)
|
|
eliminarArchivo(req.files['cartaTermino'][0].filename);
|
|
} catch (err) {}
|
|
try {
|
|
if (req.files['informeGlobal'][0].filename)
|
|
eliminarArchivo(req.files['informeGlobal'][0].filename);
|
|
} catch (err) {}
|
|
res.status(400).json({ message: err.message });
|
|
});
|
|
}
|
|
);
|
|
|
|
module.exports = app;
|