public async Task CreateOrder(int productId, int customerId, int productsNumber) { var dateTime = DateTime.Now; var duplicateOrder = await _context.FindDuplicateOrder(productId, customerId); if (duplicateOrder == null) { var order = new Order() { CustomerId = customerId, ProductId = productId, ProductsNumber = productsNumber, Date = dateTime }; _context.Add(order); await _context.SaveChangesAsync(); } else { duplicateOrder.ProductsNumber += productsNumber; duplicateOrder.Date = dateTime; await _context.SaveChangesAsync(); } }
public async Task <IActionResult> Edit(int id, [Bind("Id,ProductId,CustomerId,ProductsNumber,Date")] Order order) { if (id != order.Id) { return(NotFound()); } if (ModelState.IsValid) { try { _context.Update(order); await _context.SaveChangesAsync(); } catch (DbUpdateConcurrencyException) { if (!OrderExists(order.Id)) { return(NotFound()); } else { throw; } } return(RedirectToAction(nameof(Index))); } else { return(RedirectToAction(nameof(Edit), order.Id)); } }
public async Task <IActionResult> Create([Bind("Id,FirstName,LastName,PhoneNumber,AdditionalInfo")] Customer customer) { if (ModelState.IsValid) { _context.Add(customer); await _context.SaveChangesAsync(); return(RedirectToAction(nameof(Index))); } return(View(customer)); }
public async Task <IActionResult> RollbackOrdersWithProductConfirmed(int?id) { if (id == null) { return(NotFound()); } var product = await _context.Products.Include(p => p.Orders).SingleOrDefaultAsync(p => p.Id == id); if (product == null) { return(NotFound()); } _context.RemoveRange(product.Orders); await _context.SaveChangesAsync(); return(RedirectToAction("Index")); }