63 lines
1.9 KiB
Python
63 lines
1.9 KiB
Python
|
from datetime import datetime
|
||
|
|
||
|
class Cart:
|
||
|
"""
|
||
|
Represents a cart in the system.
|
||
|
|
||
|
:param id: The unique identifier of the cart.
|
||
|
:type id: int
|
||
|
:param price_total: The total price of the cart.
|
||
|
:type price_total: float
|
||
|
:param item_count: The count of items in the cart.
|
||
|
:type item_count: int
|
||
|
"""
|
||
|
|
||
|
def __init__(
|
||
|
self,
|
||
|
cart_id: int = None,
|
||
|
price_total: float = 0.00,
|
||
|
item_count: int = 0,
|
||
|
):
|
||
|
self.id = cart_id
|
||
|
self.price_total = price_total
|
||
|
self.item_count = item_count
|
||
|
|
||
|
def __repr__(self):
|
||
|
return f"Cart(id={self.id}, price_total={self.price_total}, item_count={self.item_count})"
|
||
|
|
||
|
class CartItem:
|
||
|
"""
|
||
|
Represents a cart item in the system.
|
||
|
|
||
|
:param id: The unique identifier of the cart item.
|
||
|
:type id: int
|
||
|
:param cart_id: The identifier of the cart.
|
||
|
:type cart_id: int
|
||
|
:param product_id: The identifier of the product.
|
||
|
:type product_id: int
|
||
|
:param count: The count of the product in the cart.
|
||
|
:type count: int
|
||
|
:param price_subtotal: The subtotal price of the product in the cart.
|
||
|
:type price_subtotal: float
|
||
|
:param date_added: The date and time when the item was added to the cart.
|
||
|
:type date_added: datetime
|
||
|
"""
|
||
|
|
||
|
def __init__(
|
||
|
self,
|
||
|
cart_item_id: int = None,
|
||
|
cart_id: int = None,
|
||
|
product_id: int = None,
|
||
|
count: int = 0,
|
||
|
price_subtotal: float = 0.00,
|
||
|
date_added: datetime = None,
|
||
|
):
|
||
|
self.id = cart_item_id
|
||
|
self.cart_id = cart_id
|
||
|
self.product_id = product_id
|
||
|
self.count = count
|
||
|
self.price_subtotal = price_subtotal
|
||
|
self.date_added = date_added or datetime.now()
|
||
|
|
||
|
def __repr__(self):
|
||
|
return f"CartItem(id={self.id}, cart_id={self.cart_id}, product_id={self.product_id}, count={self.count}, price_subtotal={self.price_subtotal}, date_added={self.date_added})"
|