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

View file

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

View file

@ -33,9 +33,7 @@ async def on_invoice_paid(payment: Payment) -> None:
# set order as paid # set order as paid
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) details = await get_diagonalley_order_details(order.id)
await update_diagonalley_product_stock(details) await update_diagonalley_product_stock(details)

View file

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

View file

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