2020-06-09 22:57:56 -06:00
|
|
|
from flask_marshmallow.sqla import SQLAlchemyAutoSchema
|
2021-10-07 09:19:37 -04:00
|
|
|
from marshmallow import EXCLUDE, INCLUDE
|
2020-06-09 22:57:56 -06:00
|
|
|
from sqlalchemy import func
|
|
|
|
|
2021-10-07 09:19:37 -04:00
|
|
|
from crc import db, ma
|
2020-06-17 17:00:16 -06:00
|
|
|
from crc.models.study import StudyModel
|
2020-06-09 22:57:56 -06:00
|
|
|
|
|
|
|
|
|
|
|
class EmailModel(db.Model):
|
|
|
|
__tablename__ = 'email'
|
|
|
|
id = db.Column(db.Integer, primary_key=True)
|
|
|
|
subject = db.Column(db.String)
|
|
|
|
sender = db.Column(db.String)
|
|
|
|
recipients = db.Column(db.String)
|
2021-10-07 09:19:37 -04:00
|
|
|
cc = db.Column(db.String, nullable=True)
|
|
|
|
bcc = db.Column(db.String, nullable=True)
|
2020-06-09 22:57:56 -06:00
|
|
|
content = db.Column(db.String)
|
|
|
|
content_html = db.Column(db.String)
|
2020-06-17 17:00:16 -06:00
|
|
|
study_id = db.Column(db.Integer, db.ForeignKey(StudyModel.id), nullable=True)
|
2021-10-07 09:19:37 -04:00
|
|
|
timestamp = db.Column(db.DateTime(timezone=True), default=func.now())
|
2021-10-12 13:42:11 -04:00
|
|
|
workflow_spec_id = db.Column(db.String, nullable=True)
|
2020-06-17 17:00:16 -06:00
|
|
|
study = db.relationship(StudyModel)
|
2022-04-25 15:36:47 -04:00
|
|
|
name = db.Column(db.String)
|
2021-10-07 09:19:37 -04:00
|
|
|
|
|
|
|
|
|
|
|
class EmailModelSchema(ma.Schema):
|
2021-10-13 11:42:01 -04:00
|
|
|
|
2021-10-07 09:19:37 -04:00
|
|
|
class Meta:
|
|
|
|
model = EmailModel
|
2021-10-26 16:28:50 -04:00
|
|
|
fields = ["id", "subject", "sender", "recipients", "cc", "bcc", "content",
|
2022-04-28 15:18:03 -04:00
|
|
|
"study_id", "timestamp", "workflow_spec_id", "name"]
|