diff --git a/server/controller/Usuario/quitarMulta.js b/server/controller/Usuario/quitarMulta.js new file mode 100644 index 0000000..8f9d819 --- /dev/null +++ b/server/controller/Usuario/quitarMulta.js @@ -0,0 +1,19 @@ +const validar = require('../../helper/validar'); +const dbPath = '../../db/tablas'; +const Usuario = require(`${dbPath}/Usuario`); + +const usuario = async (body) => { + const idUsuario = validar.validarId(body.idUsuario); + + return Usuario.findOne({ where: { idUsuario } }) + .then((res) => { + if (!res) throw new Error('No existe este usuario.'); + if (res.activo) throw new Error('Esta cuenta ya se encuentra activa.'); + return Usuario.update({ activo: false }, { where: { idUsuario } }); + }) + .then((res) => ({ + message: 'Se le quito la multa a este alumno.', + })); +}; + +module.exports = usuario; diff --git a/server/routes/Usuario.js b/server/routes/Usuario.js index f488d6b..d65254d 100644 --- a/server/routes/Usuario.js +++ b/server/routes/Usuario.js @@ -9,6 +9,7 @@ const cargaMasivaPosgrados = require(`${controllerPath}/cargaMasivaPosgrados`); const crear = require(`${controllerPath}/crear`); const escolares = require(`${controllerPath}/escolares`); const login = require(`${controllerPath}/login`); +const quitarMulta = require(`${controllerPath}/quitarMulta`); const usuario = require(`${controllerPath}/usuario`); const usuarios = require(`${controllerPath}/usuarios`); @@ -52,6 +53,16 @@ app.post(`${route}/login`, (req, res) => { }); }); +app.put(`${route}/quitar_multa`, (req, res) => { + return quitarMulta(req.body) + .then((data) => { + res.status(200).json(data); + }) + .catch((err) => { + res.status(400).json({ message: err.message }); + }); +}); + app.get(`${route}/escolares`, (req, res) => { return escolares(req.query) .then((data) => {