Ejemplo n.º 1
0
        public IActionResult ChangeSort(OrderSortState orderSortState)
        {
            OrderManagerState ordersState = HttpContext.Session.Get <OrderManagerState>("orderManagerState");

            ordersState.SortState.CurrentSort = orderSortState;
            SaveOrderManagerState(ordersState);
            return(RedirectToAction("OrderManager"));
        }
Ejemplo n.º 2
0
        public IActionResult ChangePage(int PageModification)
        {
            OrderManagerState ordersState = HttpContext.Session.Get <OrderManagerState>("orderManagerState");

            ordersState.PageState.CurrentPage = ordersState.PageState.CurrentPage + PageModification;
            SaveOrderManagerState(ordersState);
            return(RedirectToAction("OrderManager"));
        }
Ejemplo n.º 3
0
        public IActionResult ChangeFilter(FilterStateOfOrders filterStateOfOrders)
        {
            OrderManagerState ordersState = HttpContext.Session.Get <OrderManagerState>("orderManagerState");

            ordersState.FilterState = filterStateOfOrders;
            ordersState.PageState   = new PageState();
            SaveOrderManagerState(ordersState);
            return(RedirectToAction("OrderManager"));
        }
Ejemplo n.º 4
0
        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));
        }
Ejemplo n.º 5
0
        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));
        }
Ejemplo n.º 6
0
 private void SaveOrderManagerState(OrderManagerState orderManagerState)
 {
     HttpContext.Session.Set <OrderManagerState>("orderManagerState", orderManagerState);
 }