Beispiel #1
0
        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);
        }
Beispiel #2
0
 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);
 }
Beispiel #3
0
 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));
         }
     }
 }
Beispiel #4
0
 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);
     }
 }