You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
32 lines
756 B
32 lines
756 B
import time
|
|
|
|
from celery import shared_task
|
|
from django.db.models import F
|
|
|
|
from postamates.settings import AGE_DAY_LIMIT
|
|
from service.models import PlacementPoint
|
|
|
|
|
|
# Запустить worker
|
|
# celery -A postamates worker -l info
|
|
# Запустить scheduler
|
|
# celery -A postamates beat -l INFO.
|
|
|
|
@shared_task()
|
|
def raschet():
|
|
print('Hello. Celery task is running...')
|
|
time.sleep(5)
|
|
print('Finish')
|
|
|
|
|
|
@shared_task()
|
|
def add_age_day():
|
|
qs = PlacementPoint.objects
|
|
c1 = qs.filter(sample_trn=True).count()
|
|
qs.update(age_day=F('age_day') + 1)
|
|
qs2 = qs.filter(age_day__gt=AGE_DAY_LIMIT)
|
|
qs2.update(sample_trn=True)
|
|
c2 = PlacementPoint.objects.filter(sample_trn=True).count()
|
|
if c2 - c1 != 0:
|
|
raschet.delay()
|