2020-11-10 08:21:46 -05:00
|
|
|
from flask_marshmallow.sqla import SQLAlchemyAutoSchema
|
|
|
|
from sqlalchemy import func
|
|
|
|
|
2021-06-18 16:41:55 -04:00
|
|
|
from crc import db
|
|
|
|
|
2020-11-10 08:21:46 -05:00
|
|
|
|
|
|
|
class DataStoreModel(db.Model):
|
|
|
|
__tablename__ = 'data_store'
|
2020-11-11 11:36:25 -05:00
|
|
|
id = db.Column(db.Integer, primary_key=True)
|
2021-05-14 12:28:50 -04:00
|
|
|
last_updated = db.Column(db.DateTime(timezone=True), server_default=func.now())
|
2020-11-17 09:33:29 -05:00
|
|
|
key = db.Column(db.String, nullable=False)
|
2020-11-10 08:21:46 -05:00
|
|
|
workflow_id = db.Column(db.Integer)
|
2020-11-17 09:33:29 -05:00
|
|
|
study_id = db.Column(db.Integer, nullable=True)
|
2020-11-10 08:21:46 -05:00
|
|
|
task_id = db.Column(db.String)
|
|
|
|
spec_id = db.Column(db.String)
|
2020-11-17 09:33:29 -05:00
|
|
|
user_id = db.Column(db.String, nullable=True)
|
2021-04-26 09:55:28 -04:00
|
|
|
file_id = db.Column(db.Integer, db.ForeignKey('file.id'), nullable=True)
|
2020-11-10 08:21:46 -05:00
|
|
|
value = db.Column(db.String)
|
2020-11-13 09:58:21 -05:00
|
|
|
|
|
|
|
|
2021-04-26 12:31:22 -04:00
|
|
|
class DataStoreSchema(SQLAlchemyAutoSchema):
|
|
|
|
class Meta:
|
|
|
|
model = DataStoreModel
|
|
|
|
load_instance = True
|
2021-06-01 13:51:10 -04:00
|
|
|
include_fk = True
|
2021-04-26 12:31:22 -04:00
|
|
|
sqla_session = db.session
|