from django.core.management.base import BaseCommand

from notifications.workflows import send_scheduled_notifications


class Command(BaseCommand):
    help = "Envia notificações agendadas cuja data já foi atingida."

    def add_arguments(self, parser):
        parser.add_argument("--limit", type=int, default=100)

    def handle(self, *args, **options):
        result = send_scheduled_notifications(limit=options["limit"])
        self.stdout.write(self.style.SUCCESS(
            f"Fila processada — enviadas: {result['sent']}; falharam: {result['failed']}; ignoradas: {result['skipped']}."
        ))
