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