public async Task <IActionResult> ChangeStatus(ChangeOrderStatusView model) { Order order = await unitOfWork.Orders.Get(model.Id); if (order != null) { bool sendEmail = model.SendEmail; Enum.TryParse(Request.Form["orderStatus"], out OrderStatus temp); if (order.OrderStatus == temp) { sendEmail = false; } order.OrderStatus = temp; unitOfWork.Orders.Update(order); await unitOfWork.SaveAsync(); if (sendEmail) { EmailSender emailSender = new EmailSender(); await emailSender.StatusChangedSend(order); } } return(RedirectToAction("Index")); }
public async Task <IActionResult> ChangeStatus(int id) { Order order = await unitOfWork.Orders.Get(id); ChangeOrderStatusView model = new ChangeOrderStatusView { Id = order.Id, CurrentStatus = order.OrderStatus, OrderStatuses = Enum.GetValues(typeof(OrderStatus)).Cast <OrderStatus>().ToList() }; return(View(model)); }