public ActionResult Accept(AutoUpdateOrderItemModel model) { if (!_permissionService.Authorize(StandardPermissionProvider.ManageReturnRequests)) { return(AccessDeniedView()); } var returnRequest = _orderService.GetReturnRequestById(model.Id); var oi = _orderService.GetOrderItemById(returnRequest.OrderItemId); int cancelQuantity = (returnRequest.Quantity > oi.Quantity ? oi.Quantity : returnRequest.Quantity); var context = new AutoUpdateOrderItemContext() { OrderItem = oi, QuantityOld = oi.Quantity, QuantityNew = Math.Max(oi.Quantity - cancelQuantity, 0), AdjustInventory = model.AdjustInventory, UpdateRewardPoints = model.UpdateRewardPoints, UpdateTotals = model.UpdateTotals }; returnRequest.ReturnRequestStatus = ReturnRequestStatus.ReturnAuthorized; _customerService.UpdateCustomer(returnRequest.Customer); _orderProcessingService.AutoUpdateOrderDetails(context); TempData[AutoUpdateOrderItemContext.InfoKey] = context.ToString(_localizationService); return(RedirectToAction("Edit", new { id = returnRequest.Id })); }