backend y front trabajar por version de historial de cambios

This commit is contained in:
2025-11-25 09:55:21 -03:00
parent 1b31007eef
commit e8d3e7ef7b
6 changed files with 963 additions and 53 deletions

View File

@@ -201,3 +201,25 @@ class ChecklistPermission(Base):
# Relationships
checklist = relationship("Checklist", back_populates="permissions")
mechanic = relationship("User")
class InspectionAuditLog(Base):
"""Registro de auditoría para cambios en inspecciones y respuestas"""
__tablename__ = "inspection_audit_log"
id = Column(Integer, primary_key=True, index=True)
inspection_id = Column(Integer, ForeignKey("inspections.id", ondelete="CASCADE"), nullable=False)
answer_id = Column(Integer, ForeignKey("answers.id", ondelete="CASCADE"), nullable=True)
user_id = Column(Integer, ForeignKey("users.id"), nullable=False)
action = Column(String(50), nullable=False) # created, updated, deleted, status_changed
entity_type = Column(String(50), nullable=False) # inspection, answer
field_name = Column(String(100), nullable=True) # Campo modificado
old_value = Column(Text, nullable=True) # Valor anterior
new_value = Column(Text, nullable=True) # Valor nuevo
comment = Column(Text, nullable=True) # Comentario del cambio
created_at = Column(DateTime(timezone=True), server_default=func.now())
# Relationships
inspection = relationship("Inspection")
answer = relationship("Answer")
user = relationship("User")