public async Task <IActionResult> OnPostAsync() { await Task.Run(async() => { string username = userManager.GetUserName(User); using (var transaction = context.Database.BeginTransaction()) { try { IEnumerable <Cart> cartitem = cartdb.GetByCartId(username); var transactionOrder = new Transac { Username = username, OrderDate = DateTime.Now }; transactiondb.Add(transactionOrder); await transactiondb.CommitAsync(); foreach (var r in cartitem) { var orderdetail = new OrderDetail { OrderId = transactionOrder.OrderId, GameId = r.GameId, PlatformId = r.PlatformId, Quantity = r.Quantity, }; orderdetaildb.Add(orderdetail); await orderdetaildb.CommitAsync(); //Generate code for (var i = 0; i < orderdetail.Quantity; i++) { var codeidgenerated = Guid.NewGuid().ToString(); var code = new Code { CodeId = codeidgenerated, OrderId = orderdetail.OrderId, GameId = orderdetail.GameId, PlatformId = orderdetail.PlatformId }; codedb.Add(code); await codedb.CommitAsync(); } } cartdb.DeleteItemInCart(username); await cartdb.CommitAsync(); await transaction.CommitAsync(); } catch (Exception e) { Console.WriteLine(e); await transaction.RollbackAsync(); } } }); return(RedirectToPage("../u/Library")); }
public IActionResult Create(OrderDetail model) { if (ModelState.IsValid) { _OrderDetail.Add(model); return(RedirectToAction("Index")); } ViewBag.Orders = _Order.GetOrders; ViewBag.Items = _Item.GetItems; return(View(model)); }
public async Task AddOrder(Badge badge) { var Order = new Order(); var OrderDtl = new OrderDetails(); var sugar = new Sugar(drinkOrder.Quantity); Order.Badge = badge; await order.AddOrder(Order); OrderDtl.Drink = await drinks.GetDrinkById(drinkOrder.DrinkId); OrderDtl.Mug = drinkOrder.Mug; sugar.Add(OrderDtl); await orderDetail.Add(OrderDtl, Order.Badge.Id); }
public async Task <IActionResult> Add([FromBody] OrderDetail record) { var newRecord = await _OrderDetailService.Add(record); return(Ok(newRecord)); }
public static int Add(OrderDetailInfo entity) { return(dal.Add(entity)); }