const express = require('express'); const { verifyToken } = require('../auth'); const { approveReceipt, createReceipt, deleteReceipt, getSupplySummary, listLots, listMovements, listReceipts } = require('../services/supplyService'); const router = express.Router(); router.get('/supply', verifyToken, async (req, res, next) => { try { res.json(await getSupplySummary()); } catch (error) { next(error); } }); router.get('/supply/receipts', verifyToken, async (req, res, next) => { try { res.json(await listReceipts()); } catch (error) { next(error); } }); router.post('/supply/receipts', verifyToken, async (req, res, next) => { try { res.status(201).json(await createReceipt(req.body || {})); } catch (error) { next(error); } }); router.post('/supply/receipts/:id/approve', verifyToken, async (req, res, next) => { try { res.json(await approveReceipt(req.params.id)); } catch (error) { next(error); } }); router.delete('/supply/receipts/:id', verifyToken, async (req, res, next) => { try { await deleteReceipt(req.params.id); res.status(204).end(); } catch (error) { next(error); } }); router.get('/supply/lots', verifyToken, async (req, res, next) => { try { res.json(await listLots()); } catch (error) { next(error); } }); router.get('/supply/movements', verifyToken, async (req, res, next) => { try { res.json(await listMovements()); } catch (error) { next(error); } }); module.exports = router;