Ejemplo n.º 1
0
        public IActionResult NotValidatedDeliveryMen()
        {
            try
            {
                var loggedUser = adminService.GetAdminById(HttpContext.Session.GetInt32("AdminId").Value);
                ViewBag.LoggedUserFullName = $"{loggedUser.FirstName} {loggedUser.LastName}";
                ViewBag.LoggedUserPicture  = loggedUser.PicturePath;
            }
            catch (Exception)
            {
                return(RedirectToAction("Login", "Account"));
            }
            var notValidatedDeliveryMen = deliveryManService.GetNotValidatedDeliveryMen();
            DeliveryMenViewModel deliveryMenViewModel = new DeliveryMenViewModel
            {
                NotValidatedDeliveryMen = notValidatedDeliveryMen
            };

            return(View(deliveryMenViewModel));
        }
Ejemplo n.º 2
0
        public IActionResult Index()
        {
            try
            {
                var loggedUser = adminService.GetAdminById(HttpContext.Session.GetInt32("AdminId").Value);
                ViewBag.LoggedUserFullName = $"{loggedUser.FirstName} {loggedUser.LastName}";
                ViewBag.LoggedUserPicture  = loggedUser.PicturePath;
            }
            catch (Exception)
            {
                return(RedirectToAction("Login", "Account"));
            }

            var nbPendingOrders  = orderService.GetAllPendingOrders().Count();
            var deliveredOrders  = orderService.GetAllDeliveredOrders();
            var nbClients        = clientService.GetAllClients().Count();
            var nbNewDeliveryMen = deliveryManService.GetNotValidatedDeliveryMen().Count();

            var allDeliveryMen   = deliveryManService.GetAllDeliveryMen();
            var ratedDeliveryMen = new List <RatedDeliveryManDto>();
            var deliveredOrdersPerDeliveryMan = new List <DeliveredOrdersPerDeliveryManDto>();

            foreach (var man in allDeliveryMen)
            {
                var ratingOverall = ratingService.GetDeliveryManRatingOverall(man.Id);
                if (ratingOverall != 0)
                {
                    ratedDeliveryMen.Add(new RatedDeliveryManDto
                    {
                        FirstName     = man.FirstName,
                        LastName      = man.LastName,
                        RatingOverall = ratingOverall
                    });
                }

                var infos = deliveryInfoService.GetDeliveryManOrderHistory(man.Id);
                if (infos.Count() != 0)
                {
                    var nbDeliveredOrders = 0;
                    foreach (var info in infos)
                    {
                        var order = orderService.GetOrderById(info.IdOrder);
                        if (order.Status == Models.Data.EnumOrderStatus.Delivered)
                        {
                            nbDeliveredOrders++;
                        }
                    }
                    var deliveryMan = new DeliveredOrdersPerDeliveryManDto
                    {
                        FirstName         = man.FirstName,
                        LastName          = man.LastName,
                        NbDeliveredOrders = nbDeliveredOrders
                    };
                    deliveredOrdersPerDeliveryMan.Add(deliveryMan);
                }
            }


            var dashboardViewModel = new DashboardViewModel
            {
                NbPendingOrders  = nbPendingOrders,
                NbClients        = nbClients,
                DeliveredOrders  = deliveredOrders,
                NbNewDeliveryMen = nbNewDeliveryMen,
                RatedDeliveryMen = ratedDeliveryMen,
                DeliveredOrdersPerDeliveryMan = deliveredOrdersPerDeliveryMan
            };



            return(View(dashboardViewModel));
        }