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.
40 lines
1.5 KiB
40 lines
1.5 KiB
# coding=utf-8
|
|
from celery.task import periodic_task
|
|
from datetime import timedelta, datetime
|
|
from access.models import User, TrafSource, TrafTokenHistory
|
|
|
|
|
|
# @periodic_task(run_every=timedelta(minutes=20))
|
|
# def check_prepo_delay():
|
|
# # Проверка просроченых задач преподавателя
|
|
# for res in User.objects.filter(delay_date__lte=datetime.now(), in_role='T'):
|
|
# res.delay = False
|
|
# res.delay_description = ''
|
|
# res.delay_date = None
|
|
# res.save()
|
|
#
|
|
#
|
|
# @periodic_task(run_every=timedelta(minutes=1))
|
|
# def check_online():
|
|
# for user in User.objects.filter(status='ON', last_time__lte=datetime.now()-timedelta(minutes=10)):
|
|
# user.status = 'OFF'
|
|
# user.save()
|
|
#
|
|
#
|
|
# @periodic_task(run_every=timedelta(hours=1))
|
|
# def check_traf_source():
|
|
# for source in TrafSource.objects.filter(on=True).exclude(live_time=None):
|
|
# if source.token and source.token_start + timedelta(hours=source.live_time) < datetime.now():
|
|
# source.on = False
|
|
# TrafTokenHistory.objects.create(token=source.token, source=source, live_time=source.live_time, date_start=source.token_start, date_end=datetime.now())
|
|
# source.token = None
|
|
# source.token_start = None
|
|
# source.save()
|
|
|
|
|
|
#@periodic_task(run_every=timedelta(minutes=1))
|
|
#def sync_users():
|
|
# for user in User.objects.filter(sync=False):
|
|
# result = sent_sync_user(user)
|
|
# if result:
|
|
# user._set_synced()
|
|
|