Отправить письмо клиентам, собирая списки заказов в определенные часы - PullRequest
0 голосов
/ 21 января 2019

У меня есть требование, когда мне нужно отправлять электронную почту клиентам на основе временных интервалов.

Сценарий - администратор будет иметь право добавлять временные интервалы, такие как 4 часа утра, 9 часов утра, 10 часов вечера. Пользователь будет создавать заказы, а затем мне нужно собрать все заказы между временными интервалами.

Пример Заказы, созданные с 4 утра до 9 утра - будут собирать список всех заказов и отправлять письма соответствующему получателю в 9 часов утра. Заказы генерируются с 9 утра до 10 вечера, собирая заказы, отправляя письма в 10 вечера Заказы генерируются с 10 вечера до следующего дня 4 утра - сбор и отправка почты на следующий день 4 утра.

Вот так выглядит мой сценарий.

Я реализовал Quartz Scheduler, но, похоже, он не будет работать.

Любые предложения, пожалуйста? Помощь будет оценена.

1 Ответ

0 голосов
/ 21 января 2019

Просто создайте 3 рабочих места в Quartz Schedular, скажем, Jobs с именами

1) 9_AM_Job: работает каждый день в 9 утра

2) 10_PM_Job: работает каждый день в 22:00

3) 4_AM_Job: работает каждый день в 4 часа утра

Каждое задание собирает список всех заказов между соответствующим временем и отправляет соответствующим пользователям. Реализация всех заданий будет одинаковой, но они запрашивают данные с соответствующими временными метками.

Cron Trigger для работы в 9 часов утра каждый день: 0 0 9 ? * *

Cron Trigger для работы, выполняемой ежедневно в 22:00: 0 0 22 ? * *

Cron Trigger для работы 4 часа в сутки: 0 0 4 ? * *

...