Exemple #1
0
        // GET: ReportLogs
        public async Task <ActionResult> Index(string searchKey)
        {
            var userDepartment = await _userDepartmentsService.GetUserDepartmentsAsync(User.Identity.GetUserId());

            var departments = userDepartment as IList <Department> ?? userDepartment.ToList();
            var employess   = await _employeesService.FindEmployessesByDateAsync(DateTime.Now);

            if (!string.IsNullOrEmpty(searchKey))
            {
                try
                {
                    DateTime dateSearch = DateTime.ParseExact(searchKey, "dd/MM/yyyy", CultureInfo.InvariantCulture);
                    employess = await _employeesService.FindEmployessesByDateAsync(dateSearch, departments);
                }
                catch (Exception ex)
                {
                    ViewBag.ErrorMessage = $"Invalid date {searchKey}." + ex.Message;
                }
            }
            else
            {
                foreach (var dept in departments)
                {
                    employess = employess.Where(item => item.DepartmentID == dept.DepartmentID);
                }
            }
            return(View(employess));
        }