🔖 Справочник

⚡ Кратко

  • class Child(Parent) — наследование.
  • super().__init__(...) — вызов родителя.
  • isinstance(obj, Class) — проверка типа.
  • hasattr(obj, "attr") — проверка атрибута.

Наследование и полиморфизм

КонструкцияОписание
class SaleReceipt(Receipt):Наследование от базового класса.
super().__init__(...)Вызов родительского инициализатора.
self.__class__.__name__Имя класса объекта.
isinstance(receipt, SaleReceipt)Проверка принадлежности к типу.
raise ValueError("...")Генерация исключения при невалидных данных.

Методы Shift

МетодНазначение
add_receipt(amount)Создаёт SaleReceipt, если смена открыта.
add_return(source_shift, id, amount)Создаёт ReturnReceipt при валидном исходном чеке.
close()Закрывает смену.
is_closed()Проверяет статус смены.
get_total(receipt_type=None)Сумма всех или по типу.
list_receipts(receipt_type=None)Выводит чеки все или по типу.

Миксины

МиксинТребует полеМетод
EmailNotifyMixinemailemail_notify(message)
SmsNotifyMixinphonesms_notify(message)
PushNotifyMixinpush_notify(message)