public ActionResult CreateReturn(int id)
        {
            var userId = User.Identity.GetUserId();
            if (userId == null || !User.IsInRole("Customer"))
            {
                return RedirectToAction("Login", "Account");
            }
            var newReturn = new ReturnViewModel();
            Session["ReturnOrderId"] = id;
            ViewBag.OrderId = id;

            GetCustomerReturnNotification();
            GetCustomerNotification();
            return View(newReturn);
        }
示例#2
0
        public ActionResult Create(ReturnActionViewModel item)
        {
            try
            {
                if (item == null)
                    return RedirectToAction("Retrieve", "Return", new { message = ManageMessageId.Error });

                var newItem = new ReturnViewModel()
                {
                    OrderId = item.OrderId,
                    ReturnDate = item.ReturnDate,
                    ReturnMethod = item.ReturnMethod,
                    Reason = item.Reason,
                    Status = "Processing",
                    DtCreated = DateTime.UtcNow,
                    DtUpdated = DateTime.UtcNow
                };
                db.Returns.Add(newItem);
                db.SaveChanges();

                return RedirectToAction("Retrieve", "Return");
            }
            catch (Exception ex)
            {
                return new HttpStatusCodeResult(HttpStatusCode.InternalServerError, ex.ToString());
            }
        }
示例#3
0
        public ActionResult Edit(ReturnActionViewModel item)
        {
            try
            {
                //Refer to Product Controller for View
                ViewBag.ReturnStatusId = new SelectList(db.ReturnStatuses, "ReturnStatusId", "Status", item.ReturnStatusId);

                var itemToUpdate = new ReturnViewModel()
                {
                    ReturnId = item.ReturnId,
                    OrderId = item.OrderId,
                    ReturnDate = item.ReturnDate,
                    ReturnMethod = item.ReturnMethod,
                    Reason = item.Reason,
                    Status = (from rs in db.ReturnStatuses
                              where rs.ReturnStatusId == item.ReturnStatusId
                              select rs.Status).FirstOrDefault(),
                    DtCreated = item.DtCreated,
                    DtUpdated = item.DtUpdated
                };
                if (item.ReturnStatusId == 1)
                {
                    itemToUpdate.HasApproved = true;
                }
                else { itemToUpdate.HasApproved = false; }
                db.SaveChanges();
                return RedirectToAction("Retrieve", "Return", new { message = ManageMessageId.UpdateSuccess });
            }
            catch
            {
                return RedirectToAction("Retrieve", "Return", new { message = ManageMessageId.Error });
            }
        }
        public ActionResult CreateReturn(ReturnViewModel item)
        {
            string userId = User.Identity.GetUserId();
            if (userId == null)
            {
                return RedirectToAction("Login", "Account");
            }

            int orderId = Convert.ToInt32(Session["ReturnOrderId"]);
            var newReturn = new ReturnViewModel()
            {
                OrderId = orderId,
                Reason = item.Reason,
                Status = "Pending",
                DtCreated = DateTime.UtcNow,
                ReturnDate = DateTime.UtcNow,
                DtUpdated = DateTime.UtcNow,
                Notification = "Supplier",
                HasApproved = false
            };
            db.Returns.Add(newReturn);
            db.SaveChanges();

            var orderRecord = db.Orders.Where(o => o.OrderId == orderId).FirstOrDefault();
            orderRecord.HasReturn = true;
            db.SaveChanges();

            return RedirectToAction("RetrieveReturns", "CustomerReturns", new { message = ManageMessageId.AddReturnSuccess });
        }