Add Historico

This commit is contained in:
2025-12-26 14:16:25 -03:00
parent 5c1681339c
commit d5b32fb4a2
2 changed files with 176 additions and 54 deletions

View File

@@ -13,7 +13,7 @@ app.use(express.json());
const server = http.createServer(app);
const io = new Server(server, {
cors: {
origin: "*",
origin: "*",
methods: ["GET", "POST"]
}
});
@@ -45,11 +45,42 @@ app.post('/api/plates', async (req, res) => {
}
});
// History Endpoint
app.get('/api/history', async (req, res) => {
const { date } = req.query; // Format: YYYY-MM-DD
if (!date) {
return res.status(400).json({ error: 'Date is required' });
}
const startDate = new Date(date);
startDate.setHours(0, 0, 0, 0);
const endDate = new Date(date);
endDate.setHours(23, 59, 59, 999);
try {
const logs = await prisma.accessLog.findMany({
where: {
timestamp: {
gte: startDate,
lte: endDate
}
},
orderBy: {
timestamp: 'desc'
}
});
res.json(logs);
} catch (err) {
res.status(500).json({ error: err.message });
}
});
// Detection Endpoint (from Python)
app.post('/api/detect', async (req, res) => {
const { plate_number } = req.body;
console.log(`Detected: ${plate_number}`);
try {
// Check if plate exists
let plate = await prisma.plate.findUnique({
@@ -57,15 +88,15 @@ app.post('/api/detect', async (req, res) => {
});
let accessStatus = 'DENIED';
if (plate && plate.status === 'ALLOWED') {
accessStatus = 'GRANTED';
}
}
if (!plate) {
// Optional: Auto-create unknown plates?
// For now, treat as UNKNOWN (Denied)
accessStatus = 'UNKNOWN';
// Optional: Auto-create unknown plates?
// For now, treat as UNKNOWN (Denied)
accessStatus = 'UNKNOWN';
}
// Log the access attempt