62 lines
2.2 KiB
JavaScript
62 lines
2.2 KiB
JavaScript
const express = require('express');
|
|
const router = express.Router();
|
|
const HerramientaSet = require('../models/HerramientaSet');
|
|
const HerramientaAsignacion = require('../models/HerramientaAsignacion');
|
|
|
|
// Escaneo público de Set / Caja de herramientas
|
|
router.get('/set/:token', async (req, res) => {
|
|
try {
|
|
const { token } = req.params;
|
|
const set = await HerramientaSet.findByToken(token);
|
|
|
|
if (!set) {
|
|
return res.status(404).render('public/qr_error', {
|
|
title: 'Caja o Kit no encontrado',
|
|
mensaje: 'El código QR escaneado no corresponde a ninguna caja de herramientas registrada en el sistema.'
|
|
});
|
|
}
|
|
|
|
res.render('public/qr_set', {
|
|
title: `Caja de Herramientas: ${set.nombre}`,
|
|
set,
|
|
herramientas: set.herramientas || [],
|
|
custodia: set.custodia
|
|
});
|
|
} catch (error) {
|
|
console.error('Error al consultar QR de Set:', error);
|
|
res.status(500).render('public/qr_error', {
|
|
title: 'Error de Consulta',
|
|
mensaje: 'Ocurrió un error al cargar la información del kit de herramientas.'
|
|
});
|
|
}
|
|
});
|
|
|
|
// Escaneo público de Asignación de custodia
|
|
router.get('/asignacion/:token', async (req, res) => {
|
|
try {
|
|
const { token } = req.params;
|
|
const asig = await HerramientaAsignacion.findByToken(token);
|
|
|
|
if (!asig) {
|
|
return res.status(404).render('public/qr_error', {
|
|
title: 'Asignación no encontrada',
|
|
mensaje: 'El código QR escaneado no corresponde a ninguna asignación de equipamiento activa.'
|
|
});
|
|
}
|
|
|
|
res.render('public/qr_asignacion', {
|
|
title: `Custodia: ${asig.set_nombre || asig.herramienta_nombre}`,
|
|
asig,
|
|
herramientas: asig.herramientas || []
|
|
});
|
|
} catch (error) {
|
|
console.error('Error al consultar QR de Asignación:', error);
|
|
res.status(500).render('public/qr_error', {
|
|
title: 'Error de Consulta',
|
|
mensaje: 'Ocurrió un error al cargar la información de la asignación.'
|
|
});
|
|
}
|
|
});
|
|
|
|
module.exports = router;
|