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