Exemplo n.º 1
0
        public async Task <IActionResult> Dashboard()
        {
            try

            {
                ViewBag.Title = "Nemesys Dashboard";
                var model = new ReportDashboardViewModel();
                model.TotalRegisteredUsers = _userManager.Users.Count();
                model.TotalEntries         = _reportRepository.GetAllReports().Count();

                return(View(model));
            }
            catch (Exception ex)
            {
                _logger.LogError(ex.Message);
                return(View("Error"));
            }
        }
Exemplo n.º 2
0
        public ActionResult ReportDashboard()
        {
            var prepItems      = _uow.PrepListItemRepository.Get().ToList();
            var userDepartment = _uow.GetUserDepartment();

            //var usedReagent = prepItems
            //    .Where(item => item.StockReagent != null)
            //    .GroupBy(item => item.StockReagent)
            //    .OrderByDescending(item => item.Count())
            //    .ToList()
            //    .Select(item => item.Key.ReagentName)
            //    .FirstOrDefault();

            var reagent = prepItems
                          .Where(item => item.StockReagent != null && userDepartment == item.StockReagent.InventoryItems.First().Department)
                          .GroupBy(x => x.StockReagent)
                          .OrderByDescending(s => s.Count())
                          .First().Key;


            //var mostUsedReagent = _uow.PrepListItemRepository.Get()
            //.Where(item => item.StockReagent != null)// && item.StockReagent.InventoryItems.First().Department.DepartmentId == userDepartment.DepartmentId)
            //.GroupBy(item => item.StockReagent)
            //.OrderByDescending(item => item.Count())
            //.Select(item => item.StockReagent.ReagentName)
            //.FirstOrDefault();

            //var mostUsedStandard = prepItems
            //    .Where(item => item.StockStandard != null && item.StockStandard.InventoryItems.First().Department == userDepartment)
            //    .GroupBy(item => item.StockStandard)
            //    .OrderByDescending(item => item.Count())
            //    .FirstOrDefault();

            var standard = prepItems
                           .Where(item => item.StockStandard != null && userDepartment == item.StockStandard.InventoryItems.First().Department)
                           .GroupBy(x => x.StockStandard)
                           .OrderByDescending(s => s.Count())
                           .First().Key;

            //var mostUsedIntermediateStandard = prepItems
            //    .Where(item => item.IntermediateStandard != null && item.IntermediateStandard.InventoryItems.First().Department == userDepartment)
            //    .GroupBy(item => item.IntermediateStandard)
            //    .OrderByDescending(item => item.Count())
            //    .Select(item => item.Key.IntermediateStandardName)
            //    .FirstOrDefault();

            var intStandard = prepItems
                              .Where(item => item.IntermediateStandard != null && userDepartment == item.IntermediateStandard.InventoryItems.First().Department)
                              .GroupBy(x => x.IntermediateStandard)
                              .OrderByDescending(s => s.Count())
                              .First().Key;

            //var mostUsedWorkingStandard = prepItems
            //    .Where(item => item.WorkingStandard != null)
            //    .GroupBy(item => item.WorkingStandard)
            //    .OrderByDescending(item => item.Count())
            //    .Select(item => item.Key.WorkingStandardName)
            //    .FirstOrDefault();

            var model = new ReportDashboardViewModel()
            {
                StockReagentName         = reagent.ReagentName,
                StockStandardName        = standard.StockStandardName,
                IntermediateStandardName = intStandard.IntermediateStandardName,
                Department = userDepartment
            };

            return(View(model));
        }