Separate normal task review from AQMM review

This commit is contained in:
A R R R Associates
2026-08-11 09:05:09 +05:30
parent 20fd30ff3d
commit c3684b7afa
17 changed files with 435 additions and 98 deletions
+10
View File
@@ -114,6 +114,7 @@ class ServiceDefaultTaskTemplate(CommonBase):
eligible_role_names: Mapped[str | None] = mapped_column(String(200), nullable=True)
is_mandatory: Mapped[bool] = mapped_column(Boolean, default=True, nullable=False)
requires_review: Mapped[bool] = mapped_column(Boolean, default=False, nullable=False)
normal_review_role: Mapped[str | None] = mapped_column(String(30), nullable=True)
# AQMM task tags. These flags allow the existing service checklist to become
# the engagement quality checklist for assurance engagements, without creating
@@ -183,6 +184,7 @@ class FirmServiceTaskTemplate(CommonBase):
eligible_role_names: Mapped[str | None] = mapped_column(String(200), nullable=True)
is_mandatory: Mapped[bool] = mapped_column(Boolean, default=True, nullable=False)
requires_review: Mapped[bool] = mapped_column(Boolean, default=False, nullable=False)
normal_review_role: Mapped[str | None] = mapped_column(String(30), nullable=True)
# AQMM task tags copied into generated ClientServiceTaskInstance rows.
is_aqmm_task: Mapped[bool] = mapped_column(Boolean, default=False, nullable=False, index=True)
@@ -783,6 +785,14 @@ class ClientServiceTaskInstance(CommonBase):
submitted_for_review_by_user_id: Mapped[int | None] = mapped_column(ForeignKey("users.id"), nullable=True, index=True)
submitted_for_review_at_utc: Mapped[datetime | None] = mapped_column(DateTime(timezone=True), nullable=True)
# Normal operational review is intentionally separate from AQMM review.
normal_review_required: Mapped[bool] = mapped_column(Boolean, nullable=False, default=False, index=True)
normal_review_role: Mapped[str | None] = mapped_column(String(30), nullable=True, index=True)
normal_review_status: Mapped[str] = mapped_column(String(30), nullable=False, default="not_required", index=True)
normal_review_note: Mapped[str | None] = mapped_column(Text, nullable=True)
normal_reviewed_by_user_id: Mapped[int | None] = mapped_column(ForeignKey("users.id", ondelete="SET NULL"), nullable=True, index=True)
normal_reviewed_at_utc: Mapped[datetime | None] = mapped_column(DateTime(timezone=True), nullable=True)
manager_review_status: Mapped[str] = mapped_column(String(30), nullable=False, default="not_required", index=True)
manager_review_note: Mapped[str | None] = mapped_column(Text, nullable=True)
manager_reviewed_by_user_id: Mapped[int | None] = mapped_column(ForeignKey("users.id"), nullable=True, index=True)