Refactor logged-in and out messaging, Prepare Catering Module with shopping cart
This commit is contained in:
@@ -19,6 +19,16 @@ class CateringService:
|
||||
self._db_service = db_service
|
||||
self._accounting_service = accounting_service
|
||||
self._user_service = user_service
|
||||
self.cached_cart: dict[int, list[CateringMenuItem]] = { # REMOVE
|
||||
27: [
|
||||
CateringMenuItem(1, "Bockwurst", 150, CateringMenuItemCategory.SNACK),
|
||||
CateringMenuItem(2, "Pils", 120, CateringMenuItemCategory.SNACK),
|
||||
CateringMenuItem(3, "Pfezzi", 200, CateringMenuItemCategory.SNACK),
|
||||
CateringMenuItem(3, "Pfezzi", 200, CateringMenuItemCategory.SNACK),
|
||||
CateringMenuItem(4, "Pizza", 1150, CateringMenuItemCategory.MAIN_COURSE),
|
||||
CateringMenuItem(5, "Zigaretten", 800, CateringMenuItemCategory.NON_FOOD),
|
||||
]
|
||||
}
|
||||
|
||||
# ORDERS
|
||||
|
||||
@@ -110,3 +120,17 @@ class CateringService:
|
||||
def enable_menu_items_by_category(self, category: CateringMenuItemCategory) -> bool:
|
||||
items = self.get_menu(category=category)
|
||||
return all([self.enable_menu_item(item.item_id) for item in items])
|
||||
|
||||
# CART
|
||||
|
||||
def save_cart(self, user_id: Optional[int], cart: list[CateringMenuItem]) -> None:
|
||||
if user_id:
|
||||
self.cached_cart[user_id] = cart
|
||||
|
||||
def get_cart(self, user_id: Optional[int]) -> list[CateringMenuItem]:
|
||||
if user_id is None:
|
||||
return []
|
||||
try:
|
||||
return self.cached_cart[user_id]
|
||||
except KeyError:
|
||||
return []
|
||||
|
||||
Reference in New Issue
Block a user