public string Edit(Project projectToEdit, EmployeeRepository employeeRepository, List <EmployeeWithWorkHours> employeeWithWorkHours) { projectToEdit.EmployeeWithWorkHours = employeeWithWorkHours; if (projectToEdit.EmployeeWithWorkHours.Count == 0) { return("There must be at least one employee in project."); } if (!projectToEdit.IsEndDateAfterStartDate()) { return("Project End date is not valid, it must be after start date. Try again."); } var employeesToAdd = projectToEdit.EmployeeWithWorkHours; foreach (var employee in employeeRepository.Employees) { foreach (var projectWithWorkHours in employee.ProjectWithWorkHours.ToList()) { if (projectWithWorkHours.Project.Name == projectToEdit.Name) { employee.ProjectWithWorkHours.Remove(projectWithWorkHours); } } } foreach (var employeeWithWorkHoursItem in employeesToAdd) { var project1 = new ProjectWithWorkHours(); project1.Project = projectToEdit; project1.WorkHours = employeeWithWorkHoursItem.WorkHours; employeeWithWorkHoursItem.Employee.ProjectWithWorkHours.Add(project1); } return(null); }
public string Add(Project projectToAdd, EmployeeRepository employeeRepository, List <EmployeeWithWorkHours> employeeWithWorkHours) { if (!projectToAdd.IsEndDateAfterStartDate()) { return("Project End date is not valid, it must be after start date. Try again."); } if (!IsProjectValid(projectToAdd)) { return("There is already a project with that name."); } Projects.Add(projectToAdd); projectToAdd.EmployeeWithWorkHours = employeeWithWorkHours; foreach (var employee in employeeRepository.Employees) { foreach (var employeeWithWorkHoursItem in employeeWithWorkHours) { if (employeeWithWorkHoursItem.Employee.Oib == employee.Oib) { var projectWithWorkHours = new ProjectWithWorkHours(); projectWithWorkHours.Project = projectToAdd; projectWithWorkHours.WorkHours = employeeWithWorkHoursItem.WorkHours; employee.ProjectWithWorkHours.Add(projectWithWorkHours); } } } return(null); }
private void AddProjectToNewEmployeeClick(object sender, EventArgs e) { if (projectAddNewComboBox.SelectedItem == null) { var errorForm = new ErrorForm("You need to select item before clicking add."); errorForm.ShowDialog(); return; } if (addWorkHoursToProjectToNewEmployeeNumUpDown.Value == 0) { var errorForm = new ErrorForm("Work hours can't be zero."); errorForm.ShowDialog(); return; } var projectWithWorkHours = new ProjectWithWorkHours(); var projectToRemove = projectAddNewComboBox.SelectedItem; projectWithWorkHours.Project = projectAddNewComboBox.SelectedItem as Project; projectWithWorkHours.WorkHours = (int)addWorkHoursToProjectToNewEmployeeNumUpDown.Value; ProjectWithWorkHoursList.Add(projectWithWorkHours); projectAddNewComboBox.Items.Remove(projectToRemove); projectAddNewComboBox.ResetText(); addWorkHoursToProjectToNewEmployeeNumUpDown.ResetText(); addProjectToNewEmployeeButton.Hide(); }
private void AddProjectToEmployeeClick(object sender, EventArgs e) { if (workHoursNumericUpDown.Value == 0) { var errorForm = new ErrorForm("Work hours can't be zero."); errorForm.ShowDialog(); return; } if (addProjectToEmployeeComboBox.SelectedItem == null) { var errorForm = new ErrorForm("You need to select item before clicking add."); errorForm.ShowDialog(); return; } var projectWithWorkHours = new ProjectWithWorkHours(); projectWithWorkHours.WorkHours = (int)workHoursNumericUpDown.Value; projectWithWorkHours.Project = (Project)addProjectToEmployeeComboBox.SelectedItem; RemoveProjectFromEmployeeComboBox.Items.Add(projectWithWorkHours); foreach (var project in ProjectRepository.Projects) { if (projectWithWorkHours.Project.Name == project.Name) { addProjectToEmployeeComboBox.Items.Remove(project); } } addProjectToEmployeeComboBox.ResetText(); addProjectToNewEmployeeButton.Hide(); workHoursNumericUpDown.ResetText(); }
public EmployeeDetailsForm(ProjectRepository projectRepository, EmployeeRepository employeeRepository) { InitializeComponent(); ProjectWithWorkHours = new ProjectWithWorkHours(); ProjectRepository = projectRepository; EmployeeRepository = employeeRepository; }
public Menu() { InitializeComponent(); ProjectRepository = new ProjectRepository(); EmployeeRepository = new EmployeeRepository(); var firstEmployee = EmployeeRepository.Employees[0]; var firstProject = ProjectRepository.Projects[0]; var projectWithWorkHours = new ProjectWithWorkHours(); projectWithWorkHours.Project = firstProject; projectWithWorkHours.WorkHours = 15; firstEmployee.ProjectWithWorkHours.Add(projectWithWorkHours); var employeeWithWorkHours = new EmployeeWithWorkHours(); employeeWithWorkHours.Employee = firstEmployee; employeeWithWorkHours.WorkHours = 15; firstProject.EmployeeWithWorkHours.Add(employeeWithWorkHours); }