Source code for app.model.orm.submission_backup

from datetime import datetime

import sqlalchemy as sql
from sqlalchemy.orm import (
    Mapped,
    mapped_column,
)
from sqlalchemy_utc.sqltypes import UtcDateTime

from app.model.orm.orm_base import OrmBase


[docs] class SubmissionBackup(OrmBase): "A backup recording of a particular past submission"
[docs] __tablename__ = 'SubmissionBackups'
[docs] id: Mapped[int] = mapped_column(primary_key=True)
[docs] projectId: Mapped[int] = mapped_column(sql.String, nullable=False)
[docs] studyId: Mapped[int] = mapped_column(sql.String, nullable=False)
[docs] userUuid: Mapped[str] = mapped_column(sql.String, nullable=False)
[docs] dataFileId: Mapped[int] = mapped_column(sql.Integer, nullable=False)
[docs] studyDesign: Mapped[sql.JSON] = mapped_column(sql.JSON, nullable=False)
[docs] createdAt: Mapped[datetime] = mapped_column(UtcDateTime, server_default=sql.FetchedValue())