public async Task <IActionResult> Get([FromQuery] EmployeeHistoryResourceParameters parameters) { var data = await _repository.ListEmployeeArrivalsHistoryAsync(parameters); var metaDataPagination = new { totalCount = data.TotalCount, pageSize = data.PageSize, totalPages = data.TotalPages, currentPage = data.CurrentPage }; //Response.Headers.Add("Access-Control-Allow-Origin", "*"); //Response.Headers.Add("Access-Control-Allow-Methods", "POST, GET"); Response.Headers.Add("Custom-Header", "X-Pagination"); //Response.Headers.Add("Access-Control-Expose-Headers", "X-Pagination"); Response.Headers.Add("X-Pagination", JsonConvert.SerializeObject(metaDataPagination)); var resultData = _mapper.Map <IEnumerable <EmployeeHistoryResponseModel> >(data); return(Ok(resultData)); }
public async Task <PagedList <EmployeeArrival> > ListEmployeeArrivalsHistoryAsync(EmployeeHistoryResourceParameters resourceParameters) { var collection = _context.EmployeeArrival.AsQueryable(); if (!string.IsNullOrWhiteSpace(resourceParameters.FirstName)) { collection = _context.EmployeeArrival .Where(ea => ea.Employee.FirstName.Equals(resourceParameters.FirstName)); } if (!string.IsNullOrWhiteSpace(resourceParameters.Surname)) { collection = _context.EmployeeArrival .Where(ea => ea.Employee.Surname.Equals(resourceParameters.Surname)); } collection = collection.Include(ea => ea.Employee); return(await PagedList <EmployeeArrival> .CreateAsync(collection, resourceParameters.Page, resourceParameters.PageSize)); }