private static void CreateLeaveConfiguration() { LeaveConfigurationRepository repository = new LeaveConfigurationRepository(); repository.SaveOrUpdate(new LeaveConfiguration() { AmountDays = 30, LeaveEndOfLife = LeaveEndOfLife.Rollover, LeaveType = LeaveType.Sick, ValidDays = 365 * 3, }); repository.SaveOrUpdate(new LeaveConfiguration() { AmountDays = 20, LeaveEndOfLife = LeaveEndOfLife.Expire, LeaveType = LeaveType.Normal, ValidDays = 365, }); repository.SaveOrUpdate(new LeaveConfiguration() { AmountDays = 3, LeaveEndOfLife = LeaveEndOfLife.Expire, LeaveType = LeaveType.Family, ValidDays = 365, }); }
public ActionResult Employee(FormCollection formCollection) { EmployeeListViewModel employeeListViewModel = new EmployeeListViewModel(); TryUpdateModel(employeeListViewModel); if (ModelState.IsValid) { EmployeeRepository repository = new EmployeeRepository(); LeaveConfigurationRepository leaveConfigurationRepository = new LeaveConfigurationRepository(); foreach (EmployeeListItemViewModel itemViewModel in employeeListViewModel.EmployeeList) { Employee employee = repository.GetById(itemViewModel.Id); if (employee == null) { //insert if (String.IsNullOrWhiteSpace(itemViewModel.FullName) == false && itemViewModel.Id == 0) { employee = new Employee(itemViewModel.FullName) { Manager = repository.GetById(itemViewModel.ManagerId ?? 0) }; LeaveGenerator generator = new LeaveGenerator(); LeaveRepository leaveRepository = new LeaveRepository(); foreach (var leaveConfig in leaveConfigurationRepository.GetAll()) { Leave leave = generator.Generate(employee, leaveConfig); employee.LeaveList.Add(leave); leaveRepository.SaveOrUpdate(leave); } repository.SaveOrUpdate(employee); } } else { //update employee.FullName = itemViewModel.FullName; employee.Manager = repository.GetById(itemViewModel.ManagerId ?? 0); repository.SaveOrUpdate(employee); } } return(RedirectToAction("Employee")); } return(Employee()); }
private static void CreateLeave() { EmployeeRepository employeeRepository = new EmployeeRepository(); LeaveConfigurationRepository leaveConfigurationRepository = new LeaveConfigurationRepository(); LeaveRepository leaveRepository = new LeaveRepository(); LeaveGenerator generator = new LeaveGenerator(); foreach (Employee employee in employeeRepository.GetAll()) { foreach (var leaveConfig in leaveConfigurationRepository.GetAll()) { Leave leave = generator.Generate(employee, leaveConfig); employee.LeaveList.Add(leave); leaveRepository.SaveOrUpdate(leave); } } }