Fred808 commited on
Commit
5124c0a
Β·
verified Β·
1 Parent(s): 674cd8b

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +11 -2
app.py CHANGED
@@ -267,12 +267,14 @@ async def on_startup():
267
 
268
  logger = logging.getLogger(__name__)
269
 
270
-
271
  @app.post("/delivery")
272
  async def create_delivery_order(order_req: DeliveryOrderRequest):
273
  try:
 
 
274
  # Generate a unique order ID like "DEL-123456789"
275
  order_id = f"DEL-{random.randint(100000000, 999999999)}"
 
276
 
277
  # Extract delivery location
278
  delivery_address = order_req.delivery_address.lower()
@@ -281,17 +283,20 @@ async def create_delivery_order(order_req: DeliveryOrderRequest):
281
  if town in delivery_address:
282
  shipping_cost = cost
283
  break
 
284
 
285
  # Set item price (adjustable)
286
  item_price = 5000
287
  total_amount = item_price + shipping_cost
288
- total_amount_kobo = total_amount * 100
 
289
 
290
  # Get user email or default
291
  email = getattr(order_req, "email", "[email protected]")
292
 
293
  # Generate Paystack payment link
294
  payment_data = create_paystack_payment_link(email, total_amount_kobo, order_id)
 
295
 
296
  if payment_data.get("status"):
297
  payment_link = payment_data["data"]["authorization_url"]
@@ -308,6 +313,7 @@ async def create_delivery_order(order_req: DeliveryOrderRequest):
308
  f"πŸ•’ Please confirm and process."
309
  )
310
  send_whatsapp_message(MANAGEMENT_WHATSAPP_NUMBER, whatsapp_message)
 
311
 
312
  return {
313
  "order_id": order_id,
@@ -317,6 +323,7 @@ async def create_delivery_order(order_req: DeliveryOrderRequest):
317
  "message": "Order created successfully. Please complete payment using the link provided."
318
  }
319
  else:
 
320
  return {
321
  "order_id": order_id,
322
  "total_amount": f"₦{total_amount}",
@@ -325,8 +332,10 @@ async def create_delivery_order(order_req: DeliveryOrderRequest):
325
  }
326
 
327
  except Exception as e:
 
328
  raise HTTPException(status_code=500, detail=f"Error: {str(e)}")
329
 
 
330
  @app.post("/chatbot")
331
  async def enhanced_chatbot_handler(request: Request, bg: BackgroundTasks):
332
  data = await request.json()
 
267
 
268
  logger = logging.getLogger(__name__)
269
 
 
270
  @app.post("/delivery")
271
  async def create_delivery_order(order_req: DeliveryOrderRequest):
272
  try:
273
+ logger.info(f"Received order request: {order_req}")
274
+
275
  # Generate a unique order ID like "DEL-123456789"
276
  order_id = f"DEL-{random.randint(100000000, 999999999)}"
277
+ logger.info(f"Generated order ID: {order_id}")
278
 
279
  # Extract delivery location
280
  delivery_address = order_req.delivery_address.lower()
 
283
  if town in delivery_address:
284
  shipping_cost = cost
285
  break
286
+ logger.info(f"Calculated shipping cost: ₦{shipping_cost}")
287
 
288
  # Set item price (adjustable)
289
  item_price = 5000
290
  total_amount = item_price + shipping_cost
291
+ total_amount_kobo = total_amount * 100
292
+ logger.info(f"Total order amount: ₦{total_amount}")
293
 
294
  # Get user email or default
295
  email = getattr(order_req, "email", "[email protected]")
296
 
297
  # Generate Paystack payment link
298
  payment_data = create_paystack_payment_link(email, total_amount_kobo, order_id)
299
+ logger.info(f"Generated payment data: {payment_data}")
300
 
301
  if payment_data.get("status"):
302
  payment_link = payment_data["data"]["authorization_url"]
 
313
  f"πŸ•’ Please confirm and process."
314
  )
315
  send_whatsapp_message(MANAGEMENT_WHATSAPP_NUMBER, whatsapp_message)
316
+ logger.info(f"Sent WhatsApp notification to management for order {order_id}")
317
 
318
  return {
319
  "order_id": order_id,
 
323
  "message": "Order created successfully. Please complete payment using the link provided."
324
  }
325
  else:
326
+ logger.error(f"Failed to generate payment link for order {order_id}")
327
  return {
328
  "order_id": order_id,
329
  "total_amount": f"₦{total_amount}",
 
332
  }
333
 
334
  except Exception as e:
335
+ logger.error(f"Error creating delivery order: {e}", exc_info=True)
336
  raise HTTPException(status_code=500, detail=f"Error: {str(e)}")
337
 
338
+
339
  @app.post("/chatbot")
340
  async def enhanced_chatbot_handler(request: Request, bg: BackgroundTasks):
341
  data = await request.json()