Files
ci-demo/app/service.py

22 lines
527 B
Python

"""Сервис заказов демо-проекта ci-demo (СТРПО, неделя 9, Gitea edition)."""
from dataclasses import dataclass
from .discounts import Discount
@dataclass
class Order:
items: dict[str, float]
@property
def total(self) -> float:
return sum(self.items.values())
class OrderService:
def __init__(self, discount: Discount) -> None:
self.discount = discount
def total(self, order: Order) -> float:
return round(self.discount.apply(order.total), 2)