added uniqueness constraint to human task so it cannot have multiple human tasks for a process instance and task id w/ burnettk (#396)
Co-authored-by: jasquat <jasquat@users.noreply.github.com>
This commit is contained in:
parent
9a1c23f22b
commit
9b199cad71
|
@ -0,0 +1,32 @@
|
|||
"""empty message
|
||||
|
||||
Revision ID: 56e17aab85ca
|
||||
Revises: 64adf34a98db
|
||||
Create Date: 2023-07-14 11:54:20.187703
|
||||
|
||||
"""
|
||||
from alembic import op
|
||||
import sqlalchemy as sa
|
||||
|
||||
|
||||
# revision identifiers, used by Alembic.
|
||||
revision = '56e17aab85ca'
|
||||
down_revision = '64adf34a98db'
|
||||
branch_labels = None
|
||||
depends_on = None
|
||||
|
||||
|
||||
def upgrade():
|
||||
# ### commands auto generated by Alembic - please adjust! ###
|
||||
with op.batch_alter_table('human_task', schema=None) as batch_op:
|
||||
batch_op.create_unique_constraint('process_instance_task_unique', ['process_instance_id', 'task_id'])
|
||||
|
||||
# ### end Alembic commands ###
|
||||
|
||||
|
||||
def downgrade():
|
||||
# ### commands auto generated by Alembic - please adjust! ###
|
||||
with op.batch_alter_table('human_task', schema=None) as batch_op:
|
||||
batch_op.drop_constraint('process_instance_task_unique', type_='unique')
|
||||
|
||||
# ### end Alembic commands ###
|
|
@ -23,6 +23,14 @@ if TYPE_CHECKING:
|
|||
class HumanTaskModel(SpiffworkflowBaseDBModel):
|
||||
__tablename__ = "human_task"
|
||||
|
||||
__table_args__ = (
|
||||
db.UniqueConstraint(
|
||||
"process_instance_id",
|
||||
"task_id",
|
||||
name="process_instance_task_unique",
|
||||
),
|
||||
)
|
||||
|
||||
id: int = db.Column(db.Integer, primary_key=True)
|
||||
process_instance_id: int = db.Column(
|
||||
ForeignKey(ProcessInstanceModel.id), nullable=False, index=True # type: ignore
|
||||
|
|
Loading…
Reference in New Issue