stock values update
This commit is contained in:
parent
7c8e3de261
commit
c9884e512b
3 changed files with 11 additions and 5 deletions
|
|
@ -290,7 +290,7 @@ async def set_diagonalley_order_paid(payment_hash: str) -> Orders:
|
||||||
|
|
||||||
async def update_diagonalley_product_stock(products):
|
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))
|
v = ",".join(["?"] * len(products))
|
||||||
|
|
||||||
await db.execute(
|
await db.execute(
|
||||||
|
|
@ -301,7 +301,7 @@ async def update_diagonalley_product_stock(products):
|
||||||
END)
|
END)
|
||||||
WHERE id IN ({v});
|
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]:
|
async def get_diagonalley_orders(wallet_ids: Union[str, List[str]]) -> List[Orders]:
|
||||||
|
|
|
||||||
|
|
@ -5,7 +5,12 @@ from loguru import logger
|
||||||
from lnbits.core.models import Payment
|
from lnbits.core.models import Payment
|
||||||
from lnbits.tasks import register_invoice_listener
|
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():
|
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)
|
await set_diagonalley_order_paid(payment.payment_hash)
|
||||||
|
|
||||||
# deduct items sold from stock
|
# deduct items sold from stock
|
||||||
|
details = await get_diagonalley_order_details(order.id)
|
||||||
|
await update_diagonalley_product_stock(details)
|
||||||
|
|
||||||
# TODO
|
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -32,7 +32,7 @@ async def index(request: Request, user: User = Depends(check_user_exists)):
|
||||||
|
|
||||||
@diagonalley_ext.get("/{stall_id}", response_class=HTMLResponse)
|
@diagonalley_ext.get("/{stall_id}", response_class=HTMLResponse)
|
||||||
async def display(request: Request, stall_id):
|
async def display(request: Request, stall_id):
|
||||||
# test_qty = 99
|
# test_qty = 10
|
||||||
# test = [
|
# test = [
|
||||||
# {"product_id": "55vpVjWAuQExHsJxT28MYe", "quantity": test_qty},
|
# {"product_id": "55vpVjWAuQExHsJxT28MYe", "quantity": test_qty},
|
||||||
# {"product_id": "f2eGNsEWgbLJbfAApd3Jw5", "quantity": test_qty},
|
# {"product_id": "f2eGNsEWgbLJbfAApd3Jw5", "quantity": test_qty},
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue