+ cmd = select(PurchaseRecord).where(func.lower(PurchaseRecord.store) == func.lower(store_name))
+ records = session.exec(cmd).all()
+ return records
+
+ def purchase_items(self, item_ids):
+ results = []
+ with Session(self.engine) as session:
+ # Mark items as purchased
+ for item_id in item_ids.split(' '):
+ item = session.exec(_get_with_id(Item, item_id)).first()
+ if item:
+ item.purchase_date = dt.today()
+
+ # Track purchase history (locally only!)
+ # to generate recommended shopping lists
+ record = PurchaseRecord()
+ record.name = item.name
+ record.price = item.price
+ record.purchase_date = item.purchase_date
+
+ shopping_at = self._get_pref_store_id() # We bought it here
+ cmd = select(Store).where(Store.id == shopping_at)
+ store = session.exec(cmd).one()
+ record.store = store.name
+ session.add(record)
+
+ results.append(str(record))
+ # results.append(str(item))
+