public IActionResult ChangeSort(OrderSortState orderSortState) { OrderManagerState ordersState = HttpContext.Session.Get <OrderManagerState>("orderManagerState"); ordersState.SortState.CurrentSort = orderSortState; SaveOrderManagerState(ordersState); return(RedirectToAction("OrderManager")); }
public IActionResult ChangePage(int PageModification) { OrderManagerState ordersState = HttpContext.Session.Get <OrderManagerState>("orderManagerState"); ordersState.PageState.CurrentPage = ordersState.PageState.CurrentPage + PageModification; SaveOrderManagerState(ordersState); return(RedirectToAction("OrderManager")); }
public IActionResult ChangeFilter(FilterStateOfOrders filterStateOfOrders) { OrderManagerState ordersState = HttpContext.Session.Get <OrderManagerState>("orderManagerState"); ordersState.FilterState = filterStateOfOrders; ordersState.PageState = new PageState(); SaveOrderManagerState(ordersState); return(RedirectToAction("OrderManager")); }
public IActionResult OrderManager() { OrderManagerState ordersState = HttpContext.Session.Get <OrderManagerState>("orderManagerState"); if (ordersState == null) { ordersState = new OrderManagerState(); SaveOrderManagerState(ordersState); } var AllOrderViewModel = new List <OrderViewModel>(); foreach (var order in _orderService.GetOrdersToOrderManagerPage(ordersState)) //две обязанности... изменяет состояние otderstate { AllOrderViewModel.Add(_mapperToViewModel.Map(order)); } SaveOrderManagerState(ordersState); var orderManagerViewModel = new OrderManagerViewModel { orderViewModels = AllOrderViewModel, state = ordersState }; var managers = _managerService.GetManagers(); if (managers != null) { var managerList = new SelectList(managers, "Id", "Name"); ViewBag.managers = managerList.SetSelectedItemByValue(ordersState.FilterState.ValueOfFilterByManagerId.ToString()); } var shipSpecialists = _shipmentSpecialistService.GetShipmentSpecialists(); if (shipSpecialists != null) { var shipSpecialistsList = new SelectList(shipSpecialists, "Id", "Specialist"); ViewBag.shipmentSpecialists = shipSpecialistsList.SetSelectedItemByValue(ordersState.FilterState.ValueOfFilterByShipmentSpecId.ToString()); } var shipDestinations = _shipmentDestinationService.GetShipmentDestinations(); if (shipDestinations != null) { var shipSpecialistsList = new SelectList(shipDestinations, "Id", "Destination"); ViewBag.shipDest = shipSpecialistsList.SetSelectedItemByValue(ordersState.FilterState.ValueOfFilterByShipmentDestId.ToString()); } return(View(orderManagerViewModel)); }
public IEnumerable <Order> GetOrdersToOrderManagerPage(OrderManagerState ordersState) { int pageSize = ordersState.PageState.CurrentPageSize; int page = ordersState.PageState.CurrentPage; var orders = _orderRepository.GetOrdersNoArchive() .FilterByCustomerName(ordersState?.FilterState?.ValueOfFilterByCustomerName) .FilterByDateOfCreating(ordersState?.FilterState?.ValueOfFilterByDateOfCreating) .FilterById(ordersState?.FilterState?.ValueOfFilterById) .FilterByOrderState(ordersState?.FilterState?.ValueOfFilterByOrderState) .FilterByManagerId(ordersState?.FilterState?.ValueOfFilterByManagerId) .FilterByShipmentDestId(ordersState?.FilterState?.ValueOfFilterByShipmentDestId) .FilterByShipmentSpecId(ordersState?.FilterState?.ValueOfFilterByShipmentSpecId) .SortBy(ordersState.SortState.CurrentSort); ordersState.PageState.PageTotal = (int)Math.Ceiling(orders.Count() / (double)pageSize); return(orders .Skip(pageSize * (page - 1)) .Take(pageSize)); }
private void SaveOrderManagerState(OrderManagerState orderManagerState) { HttpContext.Session.Set <OrderManagerState>("orderManagerState", orderManagerState); }