public async Task <IActionResult> Create([Bind("Id,ProductCode,Name,Description,Price")] Product product) { if (ModelState.IsValid) { _context.Add(product); await _context.SaveChangesAsync(); return(RedirectToAction(nameof(Index))); } return(View(product)); }
public async Task <IActionResult> Create([Bind("Id,CustomerCode,CustomerType,Name,Web,Email,PhoneNumber")] Customer customer) { if (ModelState.IsValid) { _context.Add(customer); await _context.SaveChangesAsync(); return(RedirectToAction(nameof(Index))); } return(View(customer)); }
public async Task <IActionResult> Create(int id, [FromForm][Bind("Quantity,Price,SelectedProductId")] InvoiceItem invoiceItem) { ModelState.Clear(); var invoice = await _context.Invoice .Include(i => i.Customer) .Include(i => i.Items).ThenInclude(itm => itm.Product) .FirstOrDefaultAsync(i => i.Id == id); if (invoice is null) { return(Redirect(Url.Action("Index", "Invoices"))); } invoiceItem.Invoice = invoice; invoiceItem.AvailableProducts = await _context.Product.ToListAsync(); var product = await _context.Product.FirstOrDefaultAsync(p => p.Id == invoiceItem.SelectedProductId); if (product is null) { ModelState.AddModelError("SelectedProductId", "Unable to find product"); return(View(invoice)); } invoiceItem.Product = product; if (ModelState.IsValid) { _context.InvoiceItem.Add(invoiceItem); await _context.SaveChangesAsync(); return(Redirect(Url.Action("Details", "Invoices", new { invoiceItem.Invoice.Id }))); } return(View(invoiceItem)); }
public async Task <IActionResult> Create([Bind("SerialNumber,InvoiceNumber,InvoiceDate,SelectedCustomerId")] Invoice invoice) { ModelState.Clear(); var customer = await _context.Customer.FirstOrDefaultAsync(c => c.Id == invoice.SelectedCustomerId); if (customer is null) { ModelState.AddModelError("SelectedCustomerId", "Unable to find customer"); return(View(invoice)); } invoice.Customer = customer; if (ModelState.IsValid) { invoice.DueDate = invoice.InvoiceDate.AddDays(DueDays); _context.Add(invoice); await _context.SaveChangesAsync(); return(RedirectToAction(nameof(Index))); } return(View(invoice)); }