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);
        }
Exemple #2
0
        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);
        }
Exemple #3
0
        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;
        }