public async Task<ActionResult> DisplayProducts() { List<Product> lstProducts = null; ProductOrder productOrder = new ProductOrder(); List<AddProduct> lstAddProducts = new List<AddProduct>(); string value = cache.StringGet("Products"); if (null != value) { lstProducts = JsonConvert.DeserializeObject<List<Product>>(value); } else { lstProducts = await azureDocDBHelper.GetProducts(); value = JsonConvert.SerializeObject(lstProducts); cache.StringSet("Products", value); } foreach (Product pd in lstProducts) { AddProduct addPd = new AddProduct(); addPd.ProductId = pd.ProductId; addPd.ProductName = pd.ProductName; addPd.UnitPrice = pd.UnitPrice; lstAddProducts.Add(addPd); } productOrder.lstProducts = lstAddProducts; return View(productOrder); }
public ActionResult SubmitOrder(ProductOrder productOrder) { //if (ModelState.IsValid) { try { ViewBag.SubmitResponse = string.Empty; AzureGuidance.Domain.Order order = new AzureGuidance.Domain.Order(); order.CustomerName = productOrder.order.CustomerName; order.OrderDate = DateTime.Now; order.EmailId = productOrder.order.EmailId; order.ProductOrderDetailsList = new List<ProductDetails>(); foreach (AddProduct p in productOrder.lstProducts) { if (true == p.SelectProduct) { ProductDetails productDetails = new ProductDetails(); productDetails.ProductName = p.ProductName; productDetails.ProductQuantity = p.ProductQuantity; order.TotalDue += p.UnitPrice * p.ProductQuantity; order.orderStatus = "Processed"; order.OrderId = Guid.NewGuid(); order.ProductOrderDetailsList.Add(productDetails); p.ProductQuantity = 0; p.SelectProduct = false; } } var message = new Microsoft.ServiceBus.Messaging.BrokeredMessage(order); if (null == ServiceBusTopicHelper.OrdersTopicClient) { ServiceBusTopicHelper.Initialize(); } ServiceBusTopicHelper.OrdersTopicClient.Send(message); } catch (Exception ex) { Console.WriteLine(ex.Message); } } ProductOrder pOrder = new ProductOrder(); List<AddProduct> lstProducts = new List<AddProduct>(); pOrder.lstProducts = productOrder.lstProducts; ModelState.Clear(); ViewBag.SubmitResponse = "Order proccessed successfully."; return View("DisplayProducts", pOrder); }
public async Task<ActionResult> DisplayProducts() { List<Product> lstProducts; ProductOrder productOrder = new ProductOrder(); List<AddProduct> lstAddProducts = new List<AddProduct>(); lstProducts = await azureDocDBHelper.GetProducts(); foreach (Product pd in lstProducts) { AddProduct addPd = new AddProduct(); addPd.ProductId = pd.ProductId; addPd.ProductName = pd.ProductName; addPd.UnitPrice = pd.UnitPrice; lstAddProducts.Add(addPd); } productOrder.lstProducts = lstAddProducts; return View(productOrder); }