コード例 #1
0
        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"));
        }
コード例 #2
0
        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));
        }