Pickup dirty status field

This commit is contained in:
2026-05-15 00:22:04 +03:00
parent 15dc6147dd
commit 05ac0057a6
2 changed files with 54 additions and 3 deletions

View File

@@ -18,7 +18,7 @@ from django.core.management.base import BaseCommand
from django.db import transaction
from django.utils import timezone
from apps.submissions.emails import send_rejection_email, send_verifying_email
from apps.submissions.emails import send_verifying_email
from apps.submissions.models import Submission
from apps.submissions.validation import (
ValidationError,
@@ -70,8 +70,10 @@ class Command(BaseCommand):
sub.closed_at = timezone.now()
# closed_by stays NULL -- the validator did the rejecting,
# not an operator (plan.md §5 / §7.3).
# `Submission.save()` detects the `processing -> rejected`
# transition and queues `send_rejection_email()` via
# transaction.on_commit -- no explicit email call needed.
sub.save()
send_rejection_email(sub, previous_status="processing")
self.stdout.write(f"rejected {sub.slug}: {exc}")
else:
sub.status = Submission.Status.VERIFYING