Backend v1.0.71:

- Implementado soft delete para preguntas
- Nuevas columnas: is_deleted (boolean), updated_at (timestamp)
- Migración SQL: add_soft_delete_to_questions.sql
- Endpoint DELETE marca preguntas como eliminadas en lugar de borrarlas
- GET /api/checklists/{id} filtra preguntas eliminadas (is_deleted=false)
- Validación de subpreguntas activas antes de eliminar
- Índices agregados para optimizar queries
- Mantiene integridad de respuestas históricas y PDFs generados
- Permite limpiar checklists sin afectar inspecciones completadas
This commit is contained in:
2025-11-27 15:32:56 -03:00
parent 027f22551c
commit ed3f513075
7 changed files with 75 additions and 11 deletions

View File

@@ -1,7 +1,7 @@
{
"name": "checklist-frontend",
"private": true,
"version": "1.0.69",
"version": "1.0.70",
"type": "module",
"scripts": {
"dev": "vite",

View File

@@ -1050,8 +1050,6 @@ function QuestionsManagerModal({ checklist, onClose }) {
}
const handleEditQuestion = (question) => {
console.log('Editando pregunta:', question)
console.log('AI Prompt de la pregunta:', question.ai_prompt)
setEditingQuestion(question)
setShowCreateForm(false)
setFormData({
@@ -1152,12 +1150,20 @@ function QuestionsManagerModal({ checklist, onClose }) {
if (response.ok) {
loadQuestions()
alert('✅ Pregunta eliminada exitosamente')
} else {
alert('Error al eliminar pregunta')
const errorData = await response.json().catch(() => ({ detail: 'Error desconocido' }))
if (response.status === 400) {
// Error de validación (pregunta con respuestas o subpreguntas)
alert(`⚠️ ${errorData.detail}`)
} else {
alert('❌ Error al eliminar pregunta')
}
}
} catch (error) {
console.error('Error:', error)
alert('Error al eliminar pregunta')
alert('Error de conexión al eliminar pregunta')
}
}