stock values update

This commit is contained in:
Tiago vasconcelos 2022-08-20 08:18:28 +01:00
parent 7c8e3de261
commit c9884e512b
3 changed files with 11 additions and 5 deletions

View file

@ -290,7 +290,7 @@ async def set_diagonalley_order_paid(payment_hash: str) -> Orders:
async def update_diagonalley_product_stock(products):
q = "\n".join([f"""WHEN id='{p["product_id"]}' THEN {p["quantity"]}""" for p in products])
q = "\n".join([f"""WHEN id='{p.product_id}' THEN quantity - {p.quantity}""" for p in products])
v = ",".join(["?"] * len(products))
await db.execute(
@ -301,7 +301,7 @@ async def update_diagonalley_product_stock(products):
END)
WHERE id IN ({v});
""",
(*[p["product_id"] for p in products],)
(*[p.product_id for p in products],)
)
async def get_diagonalley_orders(wallet_ids: Union[str, List[str]]) -> List[Orders]:

View file

@ -5,7 +5,12 @@ from loguru import logger
from lnbits.core.models import Payment
from lnbits.tasks import register_invoice_listener
from .crud import get_diagonalley_order_invoiceid, set_diagonalley_order_paid
from .crud import (
get_diagonalley_order_details,
get_diagonalley_order_invoiceid,
set_diagonalley_order_paid,
update_diagonalley_product_stock,
)
async def wait_for_paid_invoices():
@ -30,6 +35,7 @@ async def on_invoice_paid(payment: Payment) -> None:
await set_diagonalley_order_paid(payment.payment_hash)
# deduct items sold from stock
details = await get_diagonalley_order_details(order.id)
await update_diagonalley_product_stock(details)
# TODO

View file

@ -32,7 +32,7 @@ async def index(request: Request, user: User = Depends(check_user_exists)):
@diagonalley_ext.get("/{stall_id}", response_class=HTMLResponse)
async def display(request: Request, stall_id):
# test_qty = 99
# test_qty = 10
# test = [
# {"product_id": "55vpVjWAuQExHsJxT28MYe", "quantity": test_qty},
# {"product_id": "f2eGNsEWgbLJbfAApd3Jw5", "quantity": test_qty},