public async Task <IActionResult> Search([FromBody] SearchEmployeeRequest employeeRequest) { if (employeeRequest != null) { var response = await employeeService.SearchEmployees(employeeRequest); return(Ok(response.EmployeeRecords)); } return(base.BadRequest(new SearchEmployeeResponse { Errors = new[] { "Something went wrong" } }));; }
public async Task <SearchEmployeeResponse> SearchEmployees(SearchEmployeeRequest search) { loggerService.LogExecute("EmployeeService.SearchEmployees", ""); var employees = await dbContext.EmployeeRecord.ToListAsync(); var filteredEmployess = employees.Where(x => x.EmployeeNumber == search.EmployeeNumber || x.FirstName == search.FirstName || x.LastName == search.LastName || (x.Temperature >= search.TemperatureFrom && x.Temperature <= search.TemperatureTo) || (x.RecordDate >= search.DateFrom && x.RecordDate <= search.DateTo)); loggerService.LogExecutionResult(filteredEmployess != null, "EmployeeService.SearchEmployees", "finished retrieving", "failed retrieving"); return(new SearchEmployeeResponse { Success = true, EmployeeRecords = filteredEmployess.ToList() }); }