public async Task <IHttpActionResult> PutSauce(int id, Sauce sauce) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } if (id != sauce.Id) { return(BadRequest()); } db.Entry(sauce).State = EntityState.Modified; try { await db.SaveChangesAsync(); } catch (DbUpdateConcurrencyException) { if (!SauceExists(id)) { return(NotFound()); } else { throw; } } return(StatusCode(HttpStatusCode.NoContent)); }
public static async Task SaveChanges() { using (BeeftecheeDb context = new BeeftecheeDb()) { await context.SaveChangesAsync(); } }
public static async Task AddDrinkAsync(Drink drink) { using (BeeftecheeDb context = new BeeftecheeDb()) { context.Drinks.Add(drink); await context.SaveChangesAsync(); } }
public async Task <ActionResult> DeleteConfirmed(int id) { Order order = await db.Orders.FindAsync(id); db.Orders.Remove(order); await db.SaveChangesAsync(); return(RedirectToAction("Index")); }
public async Task <ActionResult> Create([Bind(Include = "Id,Name,BreadId,MeatId,CheeseId,SauceId,VeggieId")] Burger burger, HttpPostedFileBase ImageUrl) { if (ModelState.IsValid) { //Find and place the objects into the burger by their id burger.Meat = db.Meats.Find(burger.MeatId); burger.Bread = db.Breads.Find(burger.BreadId); burger.Sauce = db.Sauces.Find(burger.SauceId); burger.Veggie = db.Veggies.Find(burger.VeggieId); burger.Cheese = db.Cheeses.Find(burger.CheeseId); //Calculate the Total Price of the burger burger.Price = GetTotalPrice(burger); //Get the photo if (ImageUrl != null) { ImageUrl.SaveAs(Server.MapPath("~/Content/BurgerImages/" + ImageUrl.FileName)); burger.ImageUrl = ImageUrl.FileName; } //Save the Burger into the database db.Burgers.Add(burger); await db.SaveChangesAsync(); return(RedirectToAction("Index")); } ViewBag.BreadId = new SelectList(db.Breads, "Id", "Name", burger.BreadId); ViewBag.CheeseId = new SelectList(db.Cheeses, "Id", "Name", burger.CheeseId); ViewBag.MeatId = new SelectList(db.Meats, "Id", "Name", burger.MeatId); ViewBag.SauceId = new SelectList(db.Sauces, "Id", "Name", burger.SauceId); ViewBag.VeggieId = new SelectList(db.Veggies, "Id", "Name", burger.VeggieId); return(View(burger)); }
public async Task <ActionResult> Edit([Bind(Include = "Id,Name,Litre,Price")] Drink drink, HttpPostedFileBase ImageUrl) { if (ModelState.IsValid) { //Get the photo if (ImageUrl != null) { ImageUrl.SaveAs(Server.MapPath("~/Content/DrinkImages/" + ImageUrl.FileName)); drink.ImageUrl = ImageUrl.FileName; } db.Entry(drink).State = EntityState.Modified; if (ImageUrl == null) { db.Entry(drink).Property(m => m.ImageUrl).IsModified = false; } await db.SaveChangesAsync(); return(RedirectToAction("Index")); } return(View(drink)); }
public async Task DeleteAsync <T>(T entity) where T : class { try { using (BeeftecheeDb context = new BeeftecheeDb()) { context.Entry(entity).State = EntityState.Deleted; await context.SaveChangesAsync(); } } catch (Exception ex) { throw new ArgumentException("Invalid Entity", ex); } }
public async Task <ActionResult> Checkout() { var cart = CreateOrGetCart(); Entities.Order order = new Entities.Order(); ApplicationUser user = await System.Web.HttpContext.Current.GetOwinContext() .GetUserManager <ApplicationUserManager>() .FindByIdAsync(User.Identity.GetUserId()); order.UserName = user.UserName; order.Address = user.Address; order.PostalCode = user.PostalCode; order.City = user.City; order.ContactPhone = user.PhoneNumber; order.OrderDate = DateTime.Now; order.TotalPrice = cart.GetTotalPrice(); var stringArrayPrice = order.TotalPrice.ToString("#.##").Split(','); var StringPriceWithDot = String.Join(".", stringArrayPrice); if (cart.CartBurgers.Any() || cart.CartDrinks.Any()) { try { var apiContext = PayPalConfiguration.GetAPIContext(); string payerId = Request.Params["PayerID"]; if (string.IsNullOrEmpty(payerId)) { var itemList = new ItemList() { items = new List <Item>() { new Item() { name = order.UserName + "'s Order", currency = "USD", price = StringPriceWithDot, quantity = "1", sku = "Burgers&Drinks" } } }; var payer = new Payer() { payment_method = "paypal" }; var baseURI = Request.Url.Scheme + "://" + Request.Url.Authority + "/Cart/Checkout?"; var guid = Convert.ToString((new Random()).Next(100000)); var redirectUrl = baseURI + "guid=" + guid; var redirUrls = new RedirectUrls() { cancel_url = redirectUrl + "&cancel=true", return_url = redirectUrl }; var details = new Details() { subtotal = StringPriceWithDot }; var amount = new Amount() { currency = "USD", total = StringPriceWithDot, // Total must be equal to sum of shipping, tax and subtotal. details = details }; var transactionList = new List <Transaction>(); transactionList.Add(new Transaction() { description = "Transaction description.", invoice_number = CommonPayPal.GetRandomInvoiceNumber(), amount = amount, item_list = itemList, payee = new Payee { email = "*****@*****.**" } }); var payment = new Payment() { intent = "sale", payer = payer, transactions = transactionList, redirect_urls = redirUrls }; var createdPayment = payment.Create(apiContext); var links = createdPayment.links.GetEnumerator(); string paypalRedirectUrl = null; while (links.MoveNext()) { Links lnk = links.Current; if (lnk.rel.ToLower().Trim().Equals("approval_url")) { //saving the payapalredirect URL to which user will be redirected for payment paypalRedirectUrl = lnk.href; } } // saving the paymentID in the key guid Session.Add(guid, createdPayment.id); return(Redirect(paypalRedirectUrl)); } else { // This function exectues after receving all parameters for the payment var guid = Request.Params["guid"]; var paymentId = Session[guid] as string; var paymentExecution = new PaymentExecution() { payer_id = payerId }; var payment = new Payment() { id = paymentId }; var executedPayment = payment.Execute(apiContext, paymentExecution); //If executed payment failed then we will show payment failure message to user if (executedPayment.state.ToLower() != "approved") { return(View("FailureView")); } } } catch (PayPal.PaymentsException ex) { Debug.WriteLine(ex.InnerException); Debug.WriteLine("----------------------"); Debug.WriteLine(ex.Data); Debug.WriteLine("----------------------"); Debug.WriteLine(ex.Details); Debug.WriteLine("----------------------"); Debug.WriteLine(ex.Response); } catch (Exception ex) { return(View("FailureView")); } if (cart.CartBurgers.Any()) { foreach (var burger in cart.CartBurgers) { order.OrderBurgers.Add(new OrderBurger { Name = burger.Name, Price = burger.Price, Quantity = burger.Quantity, MeatName = burger.MeatName, BreadName = burger.BreadName, CheeseName = burger.CheeseName, SauceName = burger.SauceName, VeggieName = burger.VeggieName }); } } if (cart.CartDrinks.Any()) { foreach (var drink in cart.CartDrinks) { order.OrderDrinks.Add(new OrderDrink { Name = drink.Name, Litre = drink.Litre, Quantity = drink.Quantity, Price = drink.Price }); } } db.Orders.Add(order); await db.SaveChangesAsync(); //on successful payment, show success page to user. Session["count"] = 0; ClearCart(); return(View("SuccessView", order)); } return(RedirectToAction("Index", "Cart")); }