X-Git-Url: https://us-delaporte.pagekite.me/gitweb/matrix-shop-bot.git/blobdiff_plain/b0d59de8e794c84f2089515e3adf3a68703c96b8..0e5d4f7e16d7b8906e40f784190d63f298be120f:/matrix_shop_bot/db.py diff --git a/matrix_shop_bot/db.py b/matrix_shop_bot/db.py index 6cacc33..2f5b289 100644 --- a/matrix_shop_bot/db.py +++ b/matrix_shop_bot/db.py @@ -51,7 +51,7 @@ class PreferStore(SQLModel, table=True): store_id: int | None = Field(default=None, foreign_key="store.id", primary_key=True) def _get_item_zone(item_name, session) -> str: - zone = session.exec(select(ItemZone).where(func.lower(ItemZone.name) == func.lower(item_name))).first() + zone = session.exec(select(ItemZone).where(func.lower(item_name).contains(func.lower(ItemZone.name)))).first() if zone: return zone.zone return 'No Zone Assigned' @@ -70,8 +70,9 @@ def _get_pretty_shopping_list(store_id, session) -> List[str]: zone = str(_get_item_zone(item.name, session)).title() # Title Case if not zone in zones: zones[zone] = [] - zones[zone].append(str(item)) + zones[zone].append(str(item).title()) for zone in zones: + zones[zone].sort() results.append(f' ### {zone}') for item in zones[zone]: results.append(item) @@ -191,6 +192,7 @@ class Data(): return ['Success'] def list_purchases(self, store_name): + '''List unique purchases at store in the past 90 days''' with Session(self.engine) as session: recent = dt.now() - timedelta(days=90) cmd = select(PurchaseRecord).where(func.lower(PurchaseRecord.store) == func.lower(store_name)).where(PurchaseRecord.purchase_date > recent)