Order is now a class instead of just a dict.
This commit is contained in:
parent
bca2e7b143
commit
7c1dba2f1b
2 changed files with 19 additions and 1 deletions
|
|
@ -6,6 +6,8 @@ import logging
|
||||||
from dotenv import dotenv_values
|
from dotenv import dotenv_values
|
||||||
from woocommerce import API
|
from woocommerce import API
|
||||||
|
|
||||||
|
from camisatoshi_wordpress_reports.order import Order
|
||||||
|
|
||||||
API_CONFIG = dotenv_values(
|
API_CONFIG = dotenv_values(
|
||||||
dotenv_path=Path.home() / Path(".camisatoshi-wordpress-reports/.env")
|
dotenv_path=Path.home() / Path(".camisatoshi-wordpress-reports/.env")
|
||||||
)
|
)
|
||||||
|
|
@ -54,6 +56,8 @@ def generate_um_report(start_date: str, end_date: str):
|
||||||
},
|
},
|
||||||
).json()
|
).json()
|
||||||
|
|
||||||
|
orders_in_date_range = [Order.from_api_response(order_raw_data) for order_raw_data in orders_in_date_range]
|
||||||
|
|
||||||
logger.info(f"Received {len(orders_in_date_range)} orders.")
|
logger.info(f"Received {len(orders_in_date_range)} orders.")
|
||||||
|
|
||||||
skus_to_keep = ["TEE-05-BBO-BLACK"]
|
skus_to_keep = ["TEE-05-BBO-BLACK"]
|
||||||
|
|
@ -103,7 +107,7 @@ def filter_orders_by_sku(orders: List[Dict], skus: List[str]) -> List[Dict]:
|
||||||
return filtered_orders
|
return filtered_orders
|
||||||
|
|
||||||
|
|
||||||
def find_orders_without_sats_received(orders: List[Dict]):
|
def find_orders_without_sats_received(orders: List[Dict]) -> List[Dict]:
|
||||||
orders_without_sats_received = []
|
orders_without_sats_received = []
|
||||||
|
|
||||||
for order in orders:
|
for order in orders:
|
||||||
|
|
|
||||||
14
camisatoshi_wordpress_reports/order.py
Normal file
14
camisatoshi_wordpress_reports/order.py
Normal file
|
|
@ -0,0 +1,14 @@
|
||||||
|
from typing import Dict
|
||||||
|
|
||||||
|
|
||||||
|
class Order:
|
||||||
|
|
||||||
|
def __init__(self, raw_data: Dict):
|
||||||
|
self.raw_data = raw_data
|
||||||
|
|
||||||
|
def __getitem__(self, item):
|
||||||
|
return self.raw_data[item]
|
||||||
|
|
||||||
|
@classmethod
|
||||||
|
def from_api_response(cls, raw_data) -> "Order":
|
||||||
|
return Order(raw_data)
|
||||||
Loading…
Add table
Add a link
Reference in a new issue