nagasurendra commited on
Commit
11514ee
·
verified ·
1 Parent(s): e32cb2d

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +13 -15
app.py CHANGED
@@ -349,8 +349,8 @@ def update_quantity():
349
  return jsonify({"success": False, "error": str(e)}), 500
350
  @app.route("/checkout", methods=["POST"])
351
  def checkout():
352
- email = session.get('user_email')
353
- user_id = session.get('user_id')
354
  if not email or not user_id:
355
  return jsonify({"success": False, "message": "User not logged in"})
356
 
@@ -368,18 +368,19 @@ def checkout():
368
  # Calculate the total price of the order
369
  total_price = sum(item['Price__c'] for item in cart_items)
370
 
 
 
 
 
 
 
371
  # Create the order in Salesforce
372
  order_data = {
373
  "Customer_Name__c": user_id,
374
  "Customer_Email__c": email,
375
  "Total_Amount__c": total_price,
376
- "Order_Status__c": "Pending",
377
- "Order_Items__c": "\n".join(
378
- [f"{item['Name']} (Qty: {item['Quantity__c']})" for item in cart_items]
379
- ),
380
- "Add_Ons__c": "\n".join(
381
- [item['Add_Ons__c'] if item.get('Add_Ons__c') else "None" for item in cart_items]
382
- ),
383
  }
384
  sf.Order__c.create(order_data)
385
 
@@ -387,13 +388,11 @@ def checkout():
387
  for item in cart_items:
388
  sf.Cart_Item__c.delete(item["Id"])
389
 
 
390
  return jsonify({"success": True, "redirect": "/order", "message": "Order placed successfully!"})
391
-
392
  except Exception as e:
393
  print(f"Error during checkout: {str(e)}")
394
  return jsonify({"success": False, "error": str(e)})
395
-
396
-
397
  @app.route("/order", methods=["GET"])
398
  def order_summary():
399
  email = session.get('user_email') # Fetch logged-in user's email
@@ -401,9 +400,9 @@ def order_summary():
401
  return redirect(url_for("login"))
402
 
403
  try:
404
- # Fetch the most recent order for the logged-in user
405
  result = sf.query(f"""
406
- SELECT Id, Customer_Name__c, Customer_Email__c, Total_Amount__c, Order_Items__c, Add_Ons__c, Order_Status__c
407
  FROM Order__c
408
  WHERE Customer_Email__c = '{email}'
409
  ORDER BY CreatedDate DESC
@@ -419,6 +418,5 @@ def order_summary():
419
  print(f"Error fetching order details: {str(e)}")
420
  return render_template("order.html", order=None, error=str(e))
421
 
422
-
423
  if __name__ == "__main__":
424
  app.run(debug=False, host="0.0.0.0", port=7860)
 
349
  return jsonify({"success": False, "error": str(e)}), 500
350
  @app.route("/checkout", methods=["POST"])
351
  def checkout():
352
+ email = session.get('user_email') # Fetch logged-in user's email
353
+ user_id = session.get('user_id') # Fetch logged-in user's ID
354
  if not email or not user_id:
355
  return jsonify({"success": False, "message": "User not logged in"})
356
 
 
368
  # Calculate the total price of the order
369
  total_price = sum(item['Price__c'] for item in cart_items)
370
 
371
+ # Concatenate order details for all items
372
+ order_details = "\n".join([
373
+ f"{item['Name']} (Qty: {item['Quantity__c']}, Add-Ons: {item.get('Add_Ons__c', 'None')}, Price: ${item['Price__c']})"
374
+ for item in cart_items
375
+ ])
376
+
377
  # Create the order in Salesforce
378
  order_data = {
379
  "Customer_Name__c": user_id,
380
  "Customer_Email__c": email,
381
  "Total_Amount__c": total_price,
382
+ "Order_Status__c": "Pending", # Default status
383
+ "Order_Details__c": order_details # Storing concatenated order details
 
 
 
 
 
384
  }
385
  sf.Order__c.create(order_data)
386
 
 
388
  for item in cart_items:
389
  sf.Cart_Item__c.delete(item["Id"])
390
 
391
+ # Return success response with redirect URL
392
  return jsonify({"success": True, "redirect": "/order", "message": "Order placed successfully!"})
 
393
  except Exception as e:
394
  print(f"Error during checkout: {str(e)}")
395
  return jsonify({"success": False, "error": str(e)})
 
 
396
  @app.route("/order", methods=["GET"])
397
  def order_summary():
398
  email = session.get('user_email') # Fetch logged-in user's email
 
400
  return redirect(url_for("login"))
401
 
402
  try:
403
+ # Fetch the most recent order for the user
404
  result = sf.query(f"""
405
+ SELECT Id, Customer_Name__c, Customer_Email__c, Total_Amount__c, Order_Details__c, Order_Status__c
406
  FROM Order__c
407
  WHERE Customer_Email__c = '{email}'
408
  ORDER BY CreatedDate DESC
 
418
  print(f"Error fetching order details: {str(e)}")
419
  return render_template("order.html", order=None, error=str(e))
420
 
 
421
  if __name__ == "__main__":
422
  app.run(debug=False, host="0.0.0.0", port=7860)