1234567891011121314151617 |
- def filter_interval_tickets(tickets):
- """ Очистка тикетов, у которых закончились попытки """
- return list(filter(lambda ticket: ticket.interval_attempts > 0, tickets))
- def run_process(interval_attempts_unlimited, processing):
- """Обработка одного тикета с удалением."""
- def go(ticket):
- ticket.interval_attempts -= 1
- if ticket.interval_attempts <= 0:
- interval_attempts_unlimited(ticket)
- return None # Маркер для удаления
- else:
- processing(ticket)
- return ticket
- return go
|