private void AddEmployeesToProject() { var employeesToUncheck = new List <string>(); foreach (var employeeOib in _checkedEmployeesOibList) { if (RelationProjectEmployeeRepo.IsEmployeeOnProject(employeeOib, OldName)) { continue; } var addHours = new AddHoursForm(NameTextBox.Text, EmployeeRepo.GetEmployeeByOib(employeeOib).Name, false); addHours.ShowDialog(); if (addHours.HoursToAdd == 0) { var hoursError = new ErrorForm( $"Employee {EmployeeRepo.GetEmployeeByOib(employeeOib).Name} could not be added!\nAn employee cannot work 0 hours on a project!"); hoursError.ShowDialog(); employeesToUncheck.Add(employeeOib); continue; } RelationProjectEmployeeRepo.TryAdd(OldName, employeeOib, addHours.HoursToAdd); } UncheckEmployees(employeesToUncheck); }
private bool TryRemoveUncheckedProjects() { foreach (var projectItem in ProjectListBox.Items) { if (ProjectListBox.CheckedItems.Contains(projectItem)) { continue; } if (!RelationProjectEmployeeRepo.IsEmployeeOnProject(OldOib, projectItem.ToString().GetProjectName()) ) { continue; } if (RelationProjectEmployeeRepo.TryRemove( RelationProjectEmployeeRepo.GetRelation(OldOib, projectItem.ToString().GetProjectName()))) { continue; } var lastEmployeeError = new ErrorForm($"{NameTextBox.Text} could not be removed from project {projectItem.ToString().GetProjectName()}\n" + "He is the last employee on that project"); lastEmployeeError.ShowDialog(); return(false); } return(true); }
private void RemoveUncheckedEmployees() { foreach (var employeeItem in EmployeeListBox.Items) { if (EmployeeListBox.CheckedItems.Contains(employeeItem)) { continue; } if (RelationProjectEmployeeRepo.IsEmployeeOnProject(employeeItem.ToString().GetOib(), OldName)) { RelationProjectEmployeeRepo.Remove( RelationProjectEmployeeRepo.GetRelation(employeeItem.ToString().GetOib(), OldName)); } } }
private void AddProjectsToEmployee(IEnumerable <string> projectNameListSource) { foreach (var projectName in projectNameListSource) { if (RelationProjectEmployeeRepo.IsEmployeeOnProject(OldOib, projectName)) { continue; } var addHours = new AddHoursForm(projectName, NameTextBox.Text, true); addHours.ShowDialog(); if (addHours.HoursToAdd == 0) { var hoursError = new ErrorForm( $"Project {projectName} could not be added!\nAn employee cannot work 0 hours on a project!"); hoursError.ShowDialog(); continue; } RelationProjectEmployeeRepo.TryAdd(projectName, OldOib, addHours.HoursToAdd); } }