Adds display order to Workflow Spec

This commit is contained in:
Aaron Louie 2020-04-09 14:25:14 -04:00
parent 2a6f7d4916
commit 9a9922c473
3 changed files with 36 additions and 4 deletions

View File

@ -44,7 +44,7 @@ class StudyModel(db.Model):
class WorkflowMetadata(object):
def __init__(self, id, name, display_name, description, spec_version, category_id, state: WorkflowState, status: WorkflowStatus,
total_tasks, completed_tasks):
total_tasks, completed_tasks, display_order):
self.id = id
self.name = name
self.display_name = display_name
@ -55,6 +55,7 @@ class WorkflowMetadata(object):
self.status = status
self.total_tasks = total_tasks
self.completed_tasks = completed_tasks
self.display_order = display_order
@classmethod
@ -69,7 +70,9 @@ class WorkflowMetadata(object):
state=WorkflowState.optional,
status=workflow.status,
total_tasks=workflow.total_tasks,
completed_tasks=workflow.completed_tasks)
completed_tasks=workflow.completed_tasks,
display_order=workflow.workflow_spec.display_order
)
return instance
@ -79,7 +82,7 @@ class WorkflowMetadataSchema(ma.Schema):
class Meta:
model = WorkflowMetadata
additional = ["id", "name", "display_name", "description",
"total_tasks", "completed_tasks"]
"total_tasks", "completed_tasks", "display_order"]
unknown = INCLUDE
@ -152,4 +155,4 @@ class StudySchema(ma.Schema):
@marshmallow.post_load
def make_study(self, data, **kwargs):
"""Can load the basic study data for updates to the database, but categories are write only"""
return Study(**data)
return Study(**data)

View File

@ -27,6 +27,7 @@ class WorkflowSpecModel(db.Model):
id = db.Column(db.String, primary_key=True)
name = db.Column(db.String)
display_name = db.Column(db.String)
display_order = db.Column(db.Integer, nullable=True)
description = db.Column(db.Text)
primary_process_id = db.Column(db.String)
category_id = db.Column(db.Integer, db.ForeignKey('workflow_spec_category.id'), nullable=True)

View File

@ -0,0 +1,28 @@
"""empty message
Revision ID: 7be7cecbeea8
Revises: 7c0de7621a1f
Create Date: 2020-04-09 14:23:37.384927
"""
from alembic import op
import sqlalchemy as sa
# revision identifiers, used by Alembic.
revision = '7be7cecbeea8'
down_revision = '7c0de7621a1f'
branch_labels = None
depends_on = None
def upgrade():
# ### commands auto generated by Alembic - please adjust! ###
op.add_column('workflow_spec', sa.Column('display_order', sa.Integer(), nullable=True))
# ### end Alembic commands ###
def downgrade():
# ### commands auto generated by Alembic - please adjust! ###
op.drop_column('workflow_spec', 'display_order')
# ### end Alembic commands ###