1
0
forked from erp-dev/erp
Files
erpnew/api_v1/management/commands/retry_external_printing_sync_failures.py

39 lines
1.3 KiB
Python
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
from django.core.management.base import BaseCommand, CommandError
from api_v1.tasks import (
retry_external_printing_sync_failures_impl,
)
class Command(BaseCommand):
help = '基于失败记录重试外部印染 records 同步'
def add_arguments(self, parser):
parser.add_argument('--limit', type=int, default=None, help='最多重试多少条失败记录;不传则重试全部')
parser.add_argument(
'--run-date',
type=str,
default=None,
help='仅重试指定任务日期的失败记录,格式 YYYY-MM-DD',
)
parser.add_argument(
'--record-id',
action='append',
type=int,
default=None,
help='仅重试指定 external_record_id可多次传入',
)
def handle(self, *args, **options):
limit = options.get('limit')
run_date_text = options.get('run_date')
record_ids = options.get('record_id') or []
try:
result = retry_external_printing_sync_failures_impl(
limit=limit,
run_date_text=run_date_text,
record_ids=record_ids,
)
except ValueError as exc:
raise CommandError(f'--run-date 格式非法: {run_date_text}') from exc
self.stdout.write(self.style.SUCCESS(str(result)))