public List <Employee> getListEmployee(FiltrEmployee filterEmpl) { List <Employee> listEmployee = new List <Employee>(); String get_employee_list = "get_employee_list"; using (SqlConnection connection = new SqlConnection(sqlConnectionString)) { SqlCommand command = new SqlCommand(get_employee_list, connection); command.CommandType = System.Data.CommandType.StoredProcedure; SqlParameter sp_surname = new SqlParameter("@surname", System.Data.SqlDbType.NVarChar); sp_surname.Value = filterEmpl.Surname; sp_surname.Direction = System.Data.ParameterDirection.Input; SqlParameter sp_name = new SqlParameter("@name", System.Data.SqlDbType.NVarChar); //sp_name.DbType = System.Data.DbType.String;? sp_name.Value = filterEmpl.Name; sp_name.Direction = System.Data.ParameterDirection.Input; SqlParameter sp_middleName = new SqlParameter("@middle_name", System.Data.SqlDbType.NVarChar); sp_middleName.Value = filterEmpl.Middle_name; sp_middleName.Direction = System.Data.ParameterDirection.Input; SqlParameter sp_numberPage = new SqlParameter("@numberPage", System.Data.SqlDbType.Int); sp_numberPage.Value = filterEmpl.numberPage; sp_numberPage.Direction = System.Data.ParameterDirection.Input; SqlParameter sp_countInPage = new SqlParameter("@countInPage", System.Data.SqlDbType.Int); sp_countInPage.Value = filterEmpl.countInPage; sp_countInPage.Direction = System.Data.ParameterDirection.Input; command.Parameters.Add(sp_surname); command.Parameters.Add(sp_name); command.Parameters.Add(sp_middleName); command.Parameters.Add(sp_numberPage); command.Parameters.Add(sp_countInPage); command.Connection.Open(); SqlDataReader reader = command.ExecuteReader(); if (reader.HasRows) { while (reader.Read()) { Employee empl = new Employee(); empl.employee_id = Convert.ToInt32(reader.GetValue(0)); empl.surname = Convert.ToString(reader.GetValue(1)); empl.name = Convert.ToString(reader.GetValue(2)); empl.middle_name = Convert.ToString(reader.GetValue(3)); empl.birthday = reader.GetValue(4) == DBNull.Value ? default(DateTime) : Convert.ToDateTime(reader.GetValue(4)); listEmployee.Add(empl); } } command.Connection.Close(); return(listEmployee); } }
public async Task <List <Employee> > getListEmployeeAsync(FiltrEmployee filtrEmpl) { var listEmployee = new List <Employee>(); var resultApi = new ResultApi(); HttpClient client = new HttpClient(); string req = urlEmployeeApi + "?Surname=" + filtrEmpl.Surname + "&Name=" + filtrEmpl.Name + "&Middle_name=" + filtrEmpl.Middle_name + "&countInPage=" + filtrEmpl.countInPage + "&numberPage=" + filtrEmpl.numberPage; HttpResponseMessage response = await client.GetAsync(req); response.EnsureSuccessStatusCode(); string responseBody = await response.Content.ReadAsStringAsync(); resultApi = JsonConvert.DeserializeObject <ResultApi>(responseBody); if (resultApi.code >= 0) { listEmployee = resultApi.lstEmployee; } return(listEmployee); }
public List <Employee> getListEmployee(FiltrEmployee filterEmpl) { if (filterEmpl.countInPage == null || filterEmpl.countInPage == 0) { filterEmpl.countInPage = 5; } if (filterEmpl.numberPage == null || filterEmpl.numberPage == 0) { filterEmpl.numberPage = 0; } List <Employee> listEmployee = new List <Employee>(); using (ApplicationContext db = new ApplicationContext()) { if (filterEmpl == null | (filterEmpl.Surname == null && filterEmpl.Name == null && filterEmpl.Middle_name == null)) { listEmployee = db.Employee.Skip((filterEmpl.numberPage - 1) * filterEmpl.countInPage).Take(filterEmpl.countInPage).ToList(); } else { listEmployee = db.Employee.Where(p => (p.surname.StartsWith(filterEmpl.Surname) || filterEmpl.Surname == null) && (p.name.StartsWith(filterEmpl.Name) || filterEmpl.Name == null) && (p.middle_name.StartsWith(filterEmpl.Middle_name) || filterEmpl.Middle_name == null)) .Skip((filterEmpl.numberPage - 1) * filterEmpl.countInPage).Take(filterEmpl.countInPage).ToList(); } } return(listEmployee); }
private async void showListAsync() { FiltrEmployee filterEmpl = new FiltrEmployee(); filterEmpl.Surname = txtFilterSurname.Text; filterEmpl.Name = txtFilterName.Text; filterEmpl.Middle_name = txtFilterMiddleName.Text; filterEmpl.countInPage = this.countInPage; filterEmpl.numberPage = this.numberPageOfDataGrid; Logic.HttpClientHR httpClientHR = new Logic.HttpClientHR(); List <Employee> result = await httpClientHR.getListEmployeeAsync(filterEmpl); dgEmployee.ItemsSource = result; }
public ResultApi Get([FromQuery] FiltrEmployee filterEmpl) { ResultApi result = new ResultApi(); try { result.lstEmployee = db.getListEmployee(filterEmpl); result.code = 0; result.info = ""; } catch (Exception e) { result.code = -1; result.info = e.Message.ToString() + "\n" + e.Message; } return(result); }