# DRF Rack # Библиотека классов расширений для Django REST Framework # # Автор: Николай В. Анохин # Все права защищены. Лицензия: MIT """ Описание класса DateUtils """ import datetime from django.utils import timezone class DateUtils: """ Реализует функции работы с датами и временем """ @classmethod def now(cls) -> datetime.datetime: """ Возвращает текущую дату и время """ return timezone.now() @classmethod def shift_time(cls, date_time: datetime.datetime | None = None, days: int = 0, hours: int = 0, minutes: int = 0, seconds: int = 0) -> datetime.datetime: """ Добавляет к дате и времени заданное количество дней, часов, минут и секунд :param date_time: Дата и время :param days: Количество дней :param hours: Количество часов :param minutes: Количество минут :param seconds: Количество секунд :return: Дата и время с добавленным временем """ if date_time is None: date_time = cls.now() return date_time + datetime.timedelta(days=days, hours=hours, minutes=minutes, seconds=seconds)