WIP: Add conditional questions - backend models and schemas updated

This commit is contained in:
2025-11-21 00:46:50 -03:00
parent e1ddd31968
commit c3ae68da4f
3 changed files with 55 additions and 0 deletions

View File

@@ -71,11 +71,18 @@ class Question(Base):
allow_photos = Column(Boolean, default=True)
max_photos = Column(Integer, default=3)
requires_comment_on_fail = Column(Boolean, default=False)
# Conditional logic
parent_question_id = Column(Integer, ForeignKey("questions.id"), nullable=True)
show_if_answer = Column(String(50), nullable=True) # Valor que dispara esta pregunta
created_at = Column(DateTime(timezone=True), server_default=func.now())
# Relationships
checklist = relationship("Checklist", back_populates="questions")
answers = relationship("Answer", back_populates="question")
subquestions = relationship("Question", backref="parent", remote_side=[id])
class Inspection(Base):

View File

@@ -97,6 +97,8 @@ class QuestionBase(BaseModel):
allow_photos: bool = True
max_photos: int = 3
requires_comment_on_fail: bool = False
parent_question_id: Optional[int] = None
show_if_answer: Optional[str] = None
class QuestionCreate(QuestionBase):
checklist_id: int
@@ -113,6 +115,7 @@ class Question(QuestionBase):
from_attributes = True
# Inspection Schemas
class InspectionBase(BaseModel):
or_number: Optional[str] = None