🗑️ Auto-deploy: Adicionada opção de deletar histórico no Garatujas e BrincarAtivo

This commit is contained in:
2026-06-05 00:45:18 +00:00
parent be92525fbd
commit 029ab13e0d
2 changed files with 114 additions and 3 deletions
+60
View File
@@ -970,6 +970,47 @@ app.get('/api/garatujas/:id', requireAuth, async (req, res) => {
}
});
app.delete('/api/garatujas/:id', requireAuth, async (req, res) => {
const { id } = req.params;
const usuarioId = req.user?.id || '00000000-0000-0000-0000-000000000000';
try {
const imageRes = await dbPool.query(
`SELECT image_url FROM escola.garatujas WHERE id = $1 AND usuario_id = $2`,
[id, usuarioId]
);
const dbRes = await dbPool.query(
`DELETE FROM escola.garatujas WHERE id = $1 AND usuario_id = $2`,
[id, usuarioId]
);
if (dbRes.rowCount === 0) {
return res.status(404).json({ error: 'Análise não encontrada ou não pertence ao usuário.' });
}
if (imageRes.rows.length > 0 && imageRes.rows[0].image_url) {
const imgUrl = imageRes.rows[0].image_url;
if (imgUrl.startsWith('/generated-media/')) {
const fs = require('fs');
const filename = imgUrl.replace('/generated-media/', '');
const filepath = path.join(__dirname, 'public', 'generated-media', filename);
if (fs.existsSync(filepath)) {
try {
fs.unlinkSync(filepath);
} catch (unlinkErr) {
console.error('Erro ao deletar arquivo de imagem fisicamente:', unlinkErr);
}
}
}
}
res.json({ success: true, message: 'Análise de desenho deletada com sucesso.' });
} catch (err) {
console.error('Erro ao deletar garatuja:', err);
res.status(500).json({ error: 'Erro ao deletar análise.' });
}
});
// ============================================================
// ROTAS DO BRINCARATIVO (CIRCUITOS PSICOMOTORES E BRINCADEIRAS)
// ============================================================
@@ -1077,6 +1118,25 @@ app.get('/api/brincar-ativo/:id', requireAuth, async (req, res) => {
}
});
app.delete('/api/brincar-ativo/:id', requireAuth, async (req, res) => {
const { id } = req.params;
const usuarioId = req.user?.id || '00000000-0000-0000-0000-000000000000';
try {
const dbRes = await dbPool.query(
`DELETE FROM escola.brincar_ativo WHERE id = $1 AND usuario_id = $2`,
[id, usuarioId]
);
if (dbRes.rowCount === 0) {
return res.status(404).json({ error: 'Atividade não encontrada ou não pertence ao usuário.' });
}
res.json({ success: true, message: 'Atividade deletada com sucesso.' });
} catch (err) {
console.error('Erro ao deletar brincar-ativo:', err);
res.status(500).json({ error: 'Erro ao deletar atividade.' });
}
});
// Rota GET para obter configurações do agente
app.get('/api/agent-config', requireAuth, (req, res) => {
const config = readAgentConfig();