public IActionResult Save(EditBreakdownViewModel model) { if (ModelState.IsValid) { _service.AddUpdateBreakdown(model); return(RedirectToAction("Index")); } return(RedirectToAction("Edit")); }
public async Task <IActionResult> EditBreakdown(int?id) { if (id != null) { Breakdown breakdown = await db.Breakdowns.FirstOrDefaultAsync(t => t.breakdownID == id); if (breakdown == null) { ErrorViewModel error = new ErrorViewModel { RequestId = "Ошибка! В базе данных отсутствует запись с переданным id = " + id }; return(View("Error", error)); } Dictionary <string, int> parts = new Dictionary <string, int>(); Dictionary <string, int> workers = new Dictionary <string, int>(); Dictionary <string, int> orders = new Dictionary <string, int>(); foreach (var item in db.Parts) { parts.Add(item.partName, item.partID); } foreach (var item in db.Workers) { workers.Add(item.fioWorker, item.workerID); } foreach (var item in db.Orders.Include("Car")) { orders.Add(item.Car.stateNumber.ToString() + " " + item.dateReceipt.ToString("dd.MM.yyyy"), item.orderID); } EditBreakdownViewModel model = new EditBreakdownViewModel { Id = breakdown.breakdownID, partID = breakdown.Part.partID, workerID = breakdown.Worker.workerID, orderID = breakdown.Order.orderID }; ViewBag.parts = parts; ViewBag.workers = workers; ViewBag.orders = orders; return(View(model)); } else { ErrorViewModel error = new ErrorViewModel { RequestId = "Ошибка! Отсутствует id в параметрах запроса" }; return(View("Error", error)); } }
public async Task <IActionResult> EditBreakdown(EditBreakdownViewModel model) { try { Breakdown breakdown = await db.Breakdowns.Include("Part").Include("Worker").Include(x => x.Order).ThenInclude(x => x.Car).FirstOrDefaultAsync(t => t.breakdownID == model.Id); if (ModelState.IsValid) { if (breakdown == null) { ErrorViewModel error = new ErrorViewModel { RequestId = "Ошибка! Прислана пустая модель" }; return(View("Error", error)); } breakdown.orderID = model.orderID; breakdown.partID = model.partID; breakdown.workerID = model.workerID; db.SaveChanges(); return(RedirectToAction("Breakdowns", new { id = model.orderID })); } Dictionary <string, int> parts = new Dictionary <string, int>(); Dictionary <string, int> workers = new Dictionary <string, int>(); Dictionary <string, int> orders = new Dictionary <string, int>(); foreach (var item in db.Parts) { parts.Add(item.partName, item.partID); } foreach (var item in db.Workers) { workers.Add(item.fioWorker, item.workerID); } foreach (var item in db.Orders.Include("Car")) { orders.Add(item.Car.stateNumber.ToString() + " " + item.dateReceipt.ToString("dd.MM.yyyy"), item.orderID); } ViewBag.parts = parts; ViewBag.workers = workers; ViewBag.orders = orders; return(View(model)); } catch (Exception ex) { return(RedirectToAction("Account", "AccessDenied")); } }