public static IEnumerable <Employee> GetEmployees(IEnumerable <Employee> listOfEmployees) { EmployeeFactory factory = new ConcreteEmployeeFactory(); List <Employee> listOfEmployeeNew = new List <Employee>(); foreach (Employee x in listOfEmployees) { IEmployeeFactory employee = factory.GetEmployee(x); x.annualSalary = employee.CalculateAnnualSalary(x.contractTypeName); listOfEmployeeNew.Add(x); } return((IEnumerable <Employee>)listOfEmployeeNew); }
private List <Employee> GroupEmployees(List <Employee> listEmployees) { List <Employee> listEmployeesGrouped = new List <Employee>(); ConcreteEmployeeFactory employeeFactory = new ConcreteEmployeeFactory(); if (listEmployees != null) { foreach (Employee item in listEmployees) { IEmployee employee = employeeFactory.GetEmployee(item); employee.CalculateAnnualSalary(); listEmployeesGrouped.Add((Employee)employee); } } return(listEmployeesGrouped); }
public static IEnumerable<Employee> GetEmployees(IEnumerable<Employee> listOfEmployees) { EmployeeFactory factory = new ConcreteEmployeeFactory(); List<Employee> employeeList = new List<Employee>(); foreach (Employee emp in listOfEmployees) { IEmployeeFactory employee = factory.GetEmployee(emp); emp.annualSalary = employee.CalculateAnnualSalary(emp.contractTypeName); emp.contractType = emp.contractTypeName.Contains("Hourly") ? "Hourly" : "Monthly"; emp.formattedHourlySalary = emp.hourlySalary.ToString("C"); emp.formattedMonthlySalary = emp.monthlySalary.ToString("C"); emp.formattedAnnualSalary = emp.annualSalary.ToString("C"); employeeList.Add(emp); } return (IEnumerable<Employee>)employeeList; }