munch-ease-backend/model.py
2024-01-13 12:54:04 +11:00

52 lines
No EOL
1.6 KiB
Python

from typing import List, Union
from datetime import datetime
from product import Product
class Person:
def __init__(self, id: int, name: str) -> None:
self.id = id
self.name = name
class Measurement:
def __init__(self, qty: int, unit: str) -> None:
self.qty = qty
self.unit = unit
class Ingredient:
def __init__(self, id: int, line: str, name: str, product: Product, measure: Measurement, preparation: str) -> None:
self.id = id
self.name = name
self.product = product
self.measure = measure
self.line = line
self.preparation = preparation
class Recipe:
def __init__(self, id: int, name: str, link: str, ingredients: List[Ingredient]) -> None:
self.id = id
self.name = name
self.link = link
self.ingredients = ingredients
class Meal:
def __init__(self, id: int, date: datetime, chef: List[Person], cleanup: List[Person],
consumers: List[Person], recipes: List[Recipe]) -> None:
self.id = id
self.date = date
self.chef = chef
self.cleanup = cleanup
self.consumers = consumers
self.recipes = recipes
class ShoppingListItem:
def __init__(self, id: int, food_item: Product, measure: Measurement, source: Union[Meal, None]) -> None:
self.id = id
self.food_item = food_item
self.measure = measure
self.source = source
class ShoppingList:
def __init__(self, date: datetime, items: List[ShoppingListItem]) -> None:
self.date = date
self.items = items