public async Task <IEnumerable <Employee> > GetEmployees() { var employees = await this._employeeRepository.GetEmployees(); var employeesWithSalary = employees.Select(c => { c.Salary = SalaryProviderFactory.CreateSalaryProvider(c.TypeOfContract).GetSalary(c); return(c); }); return(employeesWithSalary); }
public async Task <Employee> GetEmployeeById(int id) { var employees = await this._employeeRepository.GetEmployees(); var employee = employees.Where(c => c.Id == id).FirstOrDefault(); if (employee != null) { employee.Salary = SalaryProviderFactory.CreateSalaryProvider(employee.TypeOfContract).GetSalary(employee); } return(employee); }