ruz-bot/helpers/__init__.py
Administrator 87342da1fc fix time
2022-10-27 19:24:29 +03:00

36 lines
1.0 KiB
Python

import datetime
import logging
import zoneinfo
from helpers.models import User
campus_timdelta = {
"Москва": 3,
"Санкт-Петербург": 3,
"Нижний Новгород": 3,
"Пермь": 5
}
def now(user: User):
today = datetime.datetime.now() + datetime.timedelta(hours=campus_timdelta[user.campus])
return today
def get_next_daily_notify_time(user: User) -> datetime.datetime:
time_now = now(user)
hours, minutes = map(int, user.daily_notify_time.split(":"))
next_time = datetime.datetime(
year=time_now.year,
month=time_now.month,
day=time_now.day,
hour=hours,
minute=minutes
)
logging.info('now time is %s', time_now)
logging.info('user wants to notify at %s %s', hours, minutes)
if time_now.hour * 60 + time_now.minute > hours * 60 + minutes:
logging.info('go to next day')
next_time = next_time + datetime.timedelta(days=1)
return next_time - datetime.timedelta(hours=campus_timdelta[user.campus])