Add enable/disable workflow
This commit is contained in:
@@ -612,7 +612,7 @@ class Consumer(LoggingMixin):
|
||||
file name filters, path filters or mail rule filter if specified
|
||||
"""
|
||||
overrides = DocumentMetadataOverrides()
|
||||
for workflow in Workflow.objects.all().order_by("order"):
|
||||
for workflow in Workflow.objects.filter(enabled=True).order_by("order"):
|
||||
template_overrides = DocumentMetadataOverrides()
|
||||
|
||||
if document_matches_workflow(
|
||||
|
||||
@@ -205,6 +205,10 @@ class Migration(migrations.Migration):
|
||||
models.CharField(max_length=256, unique=True, verbose_name="name"),
|
||||
),
|
||||
("order", models.IntegerField(default=0, verbose_name="order")),
|
||||
(
|
||||
"enabled",
|
||||
models.BooleanField(default=True, verbose_name="enabled"),
|
||||
),
|
||||
],
|
||||
),
|
||||
migrations.CreateModel(
|
||||
|
||||
@@ -1086,5 +1086,7 @@ class Workflow(models.Model):
|
||||
verbose_name=_("actions"),
|
||||
)
|
||||
|
||||
enabled = models.BooleanField(_("enabled"), default=True)
|
||||
|
||||
def __str__(self):
|
||||
return f"Workflow: {self.name}"
|
||||
|
||||
@@ -1371,6 +1371,7 @@ class WorkflowSerializer(serializers.ModelSerializer):
|
||||
"id",
|
||||
"name",
|
||||
"order",
|
||||
"enabled",
|
||||
"triggers",
|
||||
"actions",
|
||||
]
|
||||
|
||||
@@ -529,6 +529,7 @@ def run_workflow_updated(sender, document: Document, logging_group=None, **kwarg
|
||||
|
||||
def run_workflow(trigger_type: WorkflowTrigger.WorkflowTriggerType, document: Document):
|
||||
for workflow in Workflow.objects.filter(
|
||||
enabled=True,
|
||||
triggers__type=trigger_type,
|
||||
).order_by("order"):
|
||||
if matching.document_matches_workflow(
|
||||
|
||||
Reference in New Issue
Block a user