const express = require('express'); const router = express.Router(); const pool = require('../db'); const receiptValidator = require('../validators/receiptValidator'); const handleValidation = require('../middleware/handleValidation'); const verifyToken = require('../middleware/verifyToken'); router.post('/', verifyToken, handleValidation, receiptValidator, async (req, res) => { const { fol, amount, date, numAccount } = req.body; const idUser = req.user.id_usuario; if(amount > 1000){ return res.status(409).json({ error: 'El monto no puede superar $1000.00' }); } try { const [existing] = await pool.execute( 'SELECT * FROM recibo WHERE folio_recibo = ?;', [fol] ); if (existing.length > 0) { return res.status(409).json({ error: 'El recibo ya existe' }); } await pool.execute( 'INSERT INTO recibo (folio_recibo, monto, fecha_recibo, id_cuenta, id_usuario) VALUES (?, ?, ?, ?, ?);', [fol, amount, date, numAccount, idUser] ); await pool.execute( 'UPDATE alumno SET credito = credito + ? WHERE id_cuenta = ?;', [amount, numAccount] ); res.json({ message: 'Recibo guardado correctamente y crédito actualizado' }); } catch (err) { res.status(500).json({ error: 'Error en el servidor: '+ err }); } }); module.exports = router; //IO