コード例 #1
0
        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" }
            }));;
        }
コード例 #2
0
        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()
            });
        }