public ActionResult Return(ReturnDM returnDM, bool withCrash = false) { if (withCrash && (returnDM.Crash == null || String.IsNullOrEmpty(returnDM.Crash.Description) || returnDM.Crash.Payment == null || returnDM.Crash.Payment.Price <= 0)) { ModelState.AddModelError("", "Не все поля заполнены корректно"); } else { returnDM.IsReturned = true; ReturnDTO returnDTO = _rentMapperDM.ToReturnDTO.Map <ReturnDM, ReturnDTO>(returnDM); returnDTO.User = new User() { Id = User.Identity.GetUserId() }; if (withCrash == false) { returnDTO.Crash = null; } _managerService.ReturnCar(returnDTO); _logWriter.CreateLog("Отклонил заказ" + returnDTO.Order.Id, User.Identity.GetUserId()); return(RedirectToAction("ShowReturns", "Manager", null)); } var orderDTO = _managerService.GetOrder(returnDM.Order.Id, false); returnDM = new ReturnDM() { Order = _rentMapperDM.ToOrderDM.Map <OrderDTO, OrderDM>(orderDTO) }; return(View(returnDM)); }
public void ReturnsViewRedirectToShowReturns() { var model = new ReturnDM(); _mockRentMapper.Setup(x => x.ToReturnDTO.Map <ReturnDM, ReturnDTO>(model)) .Returns(new ReturnDTO() { Order = new OrderDTO() { Id = 1 } }); RedirectToRouteResult result = _controller.Return(model, false) as RedirectToRouteResult; Assert.AreEqual("ShowReturns", result.RouteValues["action"]); }
/// <summary> /// Show order by id for return. /// </summary> /// <param name="id">Order id</param> /// <returns>View</returns> public ActionResult Return(int?id) { if (id != null) { var orderDTO = _managerService.GetOrder(id.Value, false); if (orderDTO == null) { return(View("CustomNotFound", "_Layout", "Заказ не найден")); } ReturnDM returnDM = new ReturnDM() { Order = _rentMapperDM.ToOrderDM.Map <OrderDTO, OrderDM>(orderDTO) }; return(View(returnDM)); } return(View("CustomNotFound", "_Layout", "Заказ не найден")); }