Exemple #1
0
        public async Task <ActionResult <List <GetAllEmployeeDetailsDto> > > GetAllEmployeeDetailsAsync(PagingParams pagingParams)
        {
            var result = await _employeeService.GetAllEmployeeDetails(pagingParams);

            var paginationHeaders = new PaginationHeaderModel
            {
                TotalCount  = result.TotalCount,
                TotalPages  = result.TotalPages,
                CurrentPage = result.CurrentPage,
                PageSize    = result.PageSize
            };

            Response.Headers.Add("pagination", JsonConvert.SerializeObject(paginationHeaders));

            var employeeList = new List <GetAllEmployeeDetailsDto>();

            foreach (var emp in result)
            {
                var designationDetails = await _departmentDesignationService.GetDesignationByDepartmentDesignationId(emp.DepartmentDesignationId);

                var employeeDetails = _mapper.Map <GetAllEmployeeDetailsDto>(emp);
                employeeDetails.DesignationTitle = designationDetails;
                var employeeName = string.Format("{0} {1} {2}", emp.FirstName, emp.MiddleName, emp.LastName);
                employeeName         = string.Join(" ", employeeName.Split(new string[] { " " }, StringSplitOptions.RemoveEmptyEntries));
                employeeDetails.Name = employeeName;
                employeeList.Add(employeeDetails);
            }

            return(Ok(employeeList));
        }
Exemple #2
0
        public async Task <ActionResult <Project> > GetAllProjectDetails(PagingParams pagingParams)
        {
            var projectDetailsList = await _projectService.GetAllProjects(pagingParams);

            var paginationHeaders = new PaginationHeaderModel
            {
                TotalCount  = projectDetailsList.TotalCount,
                TotalPages  = projectDetailsList.TotalPages,
                CurrentPage = projectDetailsList.CurrentPage,
                PageSize    = projectDetailsList.PageSize
            };

            Response.Headers.Add("pagination", JsonConvert.SerializeObject(paginationHeaders));

            string projectManager = string.Empty;
            var    listOfProject  = new List <GetProjectsDetailsDto>();

            foreach (var p in projectDetailsList)
            {
                var projectDetails = _mapper.Map <GetProjectsDetailsDto>(p);

                var projectMembersCount = await _projectManagementService.GetProjectMembersCount(p.Id);

                projectDetails.ProjectMembersCount = projectMembersCount;

                var projectRequirements = await _projectRequirementsService.GetProjectRequirements(p.Id);

                projectDetails.OpenRequirementsCount = projectRequirements.Count;

                listOfProject.Add(projectDetails);
            }
            return(Ok(listOfProject));
        }