This commit is contained in:
Ilya Mukhortov 2025-03-04 22:11:50 +10:00
parent 54d5007dae
commit 5af340bd2b
2 changed files with 23 additions and 14 deletions

View File

@ -211,12 +211,12 @@ CELERY_IGNORE_RESULT = True
CELERYBEAT_SCHEDULE = {
'update_call_requests_task': {
'task': 'appa.tasks.update_call_requests_task',
'schedule': crontab(hour='23', minute='0'),
'schedule': crontab(hour='8', minute='0'),
'options': {'queue': CELERY_DEFAULT_QUEUE}
},
'check_call_requests_task': {
'task': 'appa.tasks.check_call_requests_task',
'schedule': crontab(minute='*/1'),
'schedule': crontab(minute='*/5'),
'options': {'queue': CELERY_DEFAULT_QUEUE}
}
}

View File

@ -10,19 +10,28 @@ from appa.medicine_api import api as medicine_api
@app.task(bind=True, acks_late=True)
def send_call_request_task(self, ids=None):
call_requests = CallRequest.objects.filter(is_active=True)
if ids and len(ids) > 0:
call_requests = call_requests.filter(id__in=ids)
else:
tomorrow = datetime.date.today() + datetime.timedelta(days=1)
call_requests = CallRequest.objects.filter(
id__in=ids,
is_active=True
).exclude(
status__in=[
CallRequest.Status.APPROVED,
CallRequest.Status.CANCELED
]
)
call_requests = CallRequest.objects.filter(
date=tomorrow,
status__in=[
CallRequest.Status.PENDING,
CallRequest.Status.WITHOUT_ANSWER
]
)
for call_request in call_requests:
call_api.add_call_request(call_request)
@app.task(bind=True, acks_late=True)
def send_daily_call_request_task(self, ids=None):
tomorrow = datetime.date.today() + datetime.timedelta(days=1)
call_requests = CallRequest.objects.filter(
date=tomorrow,
status=CallRequest.Status.PENDING,
is_active=True
)
for call_request in call_requests:
call_api.add_call_request(call_request)