make format

This commit is contained in:
Tiago vasconcelos 2022-09-12 17:01:41 +01:00
parent f429037d63
commit 418cc7bf86
5 changed files with 25 additions and 18 deletions

View file

@ -274,27 +274,32 @@ async def get_diagonalley_order(order_id: str) -> Optional[Orders]:
)
return Orders(**row) if row else None
async def get_diagonalley_order_invoiceid(invoice_id: str) -> Optional[Orders]:
row = await db.fetchone(
"SELECT * FROM diagonalley.orders WHERE invoiceid = ?", (invoice_id,)
)
return Orders(**row) if row else None
async def set_diagonalley_order_paid(payment_hash: str) -> Orders:
await db.execute(
"""
"""
UPDATE diagonalley.orders
SET paid = true
WHERE invoiceid = ?
""",
(payment_hash,),
)
(payment_hash,),
)
async def update_diagonalley_product_stock(products):
q = "\n".join([f"""WHEN id='{p.product_id}' THEN quantity - {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(
f"""
UPDATE diagonalley.products
@ -303,9 +308,10 @@ 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]:
if isinstance(wallet_ids, str):
wallet_ids = [wallet_ids]
@ -344,20 +350,21 @@ async def get_diagonalley_market_stalls(market_id: str):
return [{**row} for row in rows]
async def create_diagonalley_market(data: CreateMarket):
market_id = urlsafe_short_hash()
await db.execute(
"""
"""
INSERT INTO diagonalley.markets (id, usr, name)
VALUES (?, ?, ?)
""",
(
market_id,
data.usr,
data.name,
),
)
(
market_id,
data.usr,
data.name,
),
)
market = await get_diagonalley_market(market_id)
assert market, "Newly created market couldn't be retrieved"
return market

View file

@ -104,5 +104,6 @@ class Market(BaseModel):
usr: str
name: Optional[str]
class CreateMarketStalls(BaseModel):
stallid: str

View file

@ -33,9 +33,7 @@ async def on_invoice_paid(payment: Payment) -> None:
# set order as paid
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)

View file

@ -44,7 +44,7 @@ async def display(request: Request, stall_id):
raise HTTPException(
status_code=HTTPStatus.NOT_FOUND, detail="Stall does not exist."
)
stall = stall.dict()
del stall["privatekey"]
stall["zones"] = zones

View file

@ -290,6 +290,7 @@ async def api_diagonalley_check_payment(payment_hash: str):
return {"paid": False}
return status
@diagonalley_ext.delete("/api/v1/orders/{order_id}")
async def api_diagonalley_order_delete(
order_id: str, wallet: WalletTypeInfo = Depends(get_key_type)