//Lost button private void ProjectMenuDeleteButton_Click(object sender, EventArgs e) { var ProjectsMarkedforDestuction = new List <Projects>(); foreach (var CheckedProject in ProjectHistroylistBox.CheckedItems) { ProjectsMarkedforDestuction.Add(ProjectList.FindProject(ProjectsMarkedforDestuction.ToString().GetProjectNameInCheck())); } if (ProjectsMarkedforDestuction.Count == 0) { return; } if (DialogResult.Yes == MessageBox.Show("Jeste li sigurni da zelite izbrisati odabrane stavke?", "Oprez!", MessageBoxButtons.YesNo, MessageBoxIcon.Exclamation)) { foreach (var project in ProjectsMarkedforDestuction) { ProjectList.Remove(project); foreach (var employee in EmployeesOnProject.GetEmployeesOnProject(project.Name)) { EmployeesOnProject.Remove(EmployeesOnProject.GetRelation(employee.OIB, project.Name)); } } } else { this.Close(); } }
private static void AddEmployeeProjects(ListViewItem destination, Employees SourceProjects) { var FinishedProjects = 0; var ActiveProjects = 0; var SoonToComeProjects = 0; foreach (var Project in EmployeesOnProject.GetProjectsByEmployee(SourceProjects.OIB)) { if (Project.Started()) { FinishedProjects++; } if (Project.Started() && !Project.Finished()) { ActiveProjects++; } if (!Project.Started()) { SoonToComeProjects++; } } destination.SubItems.Add(FinishedProjects.ToString()); destination.SubItems.Add(ActiveProjects.ToString()); destination.SubItems.Add(SoonToComeProjects.ToString()); }
private static void AddEmployeeProperties(ListViewItem destination, Employees Source) { destination.SubItems.Add(Source.Surname); destination.SubItems.Add($"{Source.BirthDay:d}"); destination.SubItems.Add(Source.OIB); destination.SubItems.Add(Source.Rank.ToString()); destination.SubItems.Add(EmployeesOnProject.EmployeeThisWeeksWorkHours(Source.OIB).ToString()); }
private void UpdateOIB() { foreach (var relation in EmployeesOnProject.GetAllRelations()) { if (relation.OIB == OldOIB) { relation.OIB = EmployeeAddOIBTextbox.Text; } } }
private void UpdateProjectName() { foreach (var Relation in EmployeesOnProject.GetAllRelations()) { if (Relation.ProjectName == OldName) { Relation.ProjectName = ProjectAddNameTextBox.Text; } } }
private void RemoveUncheckedEmployees() { foreach (var EmployeeProperty in ProjectAddcheckedListBox.Items) { if (ProjectAddcheckedListBox.CheckedItems.Contains(EmployeeProperty)) { continue; } if (EmployeesOnProject.IsEmployeeOnProject(EmployeeProperty.ToString().GetOIBInCheck(), OldName)) { EmployeesOnProject.Remove(EmployeesOnProject.GetRelation(EmployeeProperty.ToString().GetOIBInCheck(), OldName)); } } }
private static void AddEmployeeColors(ListViewItem destination, Employees SourceWorkHours) { if (EmployeesOnProject.EmployeeThisWeeksWorkHours(SourceWorkHours.OIB) > 40) { destination.BackColor = Color.Red; } else if (EmployeesOnProject.EmployeeThisWeeksWorkHours(SourceWorkHours.OIB) < 30) { destination.BackColor = Color.Goldenrod; } else { destination.BackColor = Color.MediumSeaGreen; } }
private void CheckProjectsDoneByEmployee(string Oib) { foreach (var Project in EmployeesOnProject.GetProjectsByEmployee(Oib)) { for (var i = 0; i < EmployeePositioncheckedListBox.Items.Count; i++) { if (EmployeePositioncheckedListBox.Items[i].ToString().GetProjectNameInCheck() != Project.ToString().GetProjectNameInCheck()) { continue; } EmployeePositioncheckedListBox.SetItemChecked(i, true); break; } } }
private void CheckEmployeesOnProject(string name) { foreach (var Employee in EmployeesOnProject.GetEmployeesOnProject(name)) { for (var i = 0; i < ProjectAddcheckedListBox.Items.Count; i++) { if (ProjectAddcheckedListBox.Items[i].ToString().GetOIBInCheck() != Employee.ToString().GetOIBInCheck()) { continue; } ProjectAddcheckedListBox.SetItemChecked(i, true); break; } } }
private void AddProjectsToEmployee(IEnumerable <string> SourceProjectList) { foreach (var Name in SourceProjectList) { if (EmployeesOnProject.IsEmployeeOnProject(OldOIB, Name)) { continue; } var AddTime = new AddEmployeeWorkHours(Name, EmployeAddNameTextbox.Text); AddTime.ShowDialog(); if (AddTime.HoursToAdd == 0) { MessageBox.Show("Upozorenje!", "Nemoze zaposlenik ne radit ništa!", MessageBoxButtons.OK, MessageBoxIcon.Error); continue; } EmployeesOnProject.AddProject(Name, OldOIB, AddTime.HoursToAdd); } }
private static void DeleteEmployee(Employees MarkedEmployee) { var ErrorCounter = 0; foreach (var project in EmployeesOnProject.GetProjectsByEmployee(MarkedEmployee.OIB)) { if (EmployeesOnProject.TryRemove(EmployeesOnProject.GetRelation(MarkedEmployee.OIB, project.Name))) { continue; } ErrorCounter++; MessageBox.Show("Upozorenje!", "Ne možete izbrisati odabranog zaposlenika jer sam radi na jednom ili više projekata!", MessageBoxButtons.OK, MessageBoxIcon.Error); break; } if (ErrorCounter == 0) { EmployeesList.EmployeeDelete(MarkedEmployee); } }
private void RefreshProjectDetails() { var detailsText = ""; foreach (var Project in ProjectDetails) { detailsText += $"{Project.Name}\n{Project.ProjectStart:d} - {Project.ProjectFinish:d}\n\n"; foreach (var Position in Enum.GetNames(typeof(CompanyPositions))) { var PositionsOfEmployees = new List <Employees>(); foreach (var Employee in EmployeesOnProject.GetEmployeesOnProject(Project.Name)) { if (Employee.Rank.ToString() == Position) { PositionsOfEmployees.Add(Employee); } } if (PositionsOfEmployees.Count == 0) { continue; } detailsText += $"{Position} ({PositionsOfEmployees.Count})\n"; foreach (var employee in PositionsOfEmployees) { detailsText += $"\t{employee.Name} {employee.Surname} ({EmployeesOnProject.GetRelation(employee.OIB, Project.Name).WorkHours} hours)\n"; } detailsText += "\n"; } detailsText += "\n"; } ProjectDetailslistBox.Text = detailsText; }
private void RefreshProjects() { var detailsText = ""; foreach (var project in ProjectHistoryList) { detailsText += $"{project.Name}\n{project.ProjectStart:d} - {project.ProjectFinish:d}\n\n"; foreach (var position in Enum.GetNames(typeof(CompanyPositions))) { var positionEmployees = new List <Employees>(); foreach (var employee in EmployeesOnProject.GetEmployeesOnProject(project.Name)) { if (employee.Rank.ToString() == position) { positionEmployees.Add(employee); } } if (positionEmployees.Count == 0) { continue; } detailsText += $"{position} ({positionEmployees.Count})\n"; foreach (var employee in positionEmployees) { detailsText += $"\t{employee.Name} {employee.Surname} ({EmployeesOnProject.GetRelation(employee.OIB, project.Name).WorkHours} hours)\n"; } detailsText += "\n"; } detailsText += "\n"; } ProjectHistroylistBox.Text = detailsText; }
private bool RemoveUncheckedProjects() { foreach (var ProjectProperty in EmployeePositioncheckedListBox.Items) { if (EmployeePositioncheckedListBox.CheckedItems.Contains(ProjectProperty)) { continue; } if (!EmployeesOnProject.IsEmployeeOnProject(OldOIB, ProjectProperty.ToString().GetProjectNameInCheck())) { continue; } if (EmployeesOnProject.TryRemove(EmployeesOnProject.GetRelation(OldOIB, ProjectProperty.ToString().GetProjectNameInCheck()))) { continue; } EmployeeDeleteError LastEmp = new EmployeeDeleteError(); LastEmp.ShowDialog(); return(false); } return(true); }
private void AddEmployeesToProject() { var EmployeesUnchecked = new List <string>(); foreach (var Oib in CheckedOIBs) { if (EmployeesOnProject.IsEmployeeOnProject(Oib, OldName)) { continue; } var AddTime = new AddProjectWorkHours(ProjectAddNameTextBox.Text, EmployeesList.FindEmployeeByOIB(Oib).Name); AddTime.ShowDialog(); if (AddTime.HoursToAdd == 0) { MessageBox.Show("Upozorenje!", "Zaposlenik ne može raditi ništa!", MessageBoxButtons.OK, MessageBoxIcon.Error); EmployeesUnchecked.Add(Oib); continue; } EmployeesOnProject.AddProject(OldName, Oib, AddTime.HoursToAdd); } UncheckEmployees(EmployeesUnchecked); }
private void RefreshEmployeeInfo() { EmployeeListslistView.Items.Clear(); EmployeeListslistView.Columns.Add("Ime:", -1, HorizontalAlignment.Left); EmployeeListslistView.Columns.Add("Prezime:", -1, HorizontalAlignment.Left); EmployeeListslistView.Columns.Add("Datum rođenja:", -1, HorizontalAlignment.Left); EmployeeListslistView.Columns.Add("OIB:", -1, HorizontalAlignment.Left); EmployeeListslistView.Columns.Add("Pozicija:", -1, HorizontalAlignment.Left); EmployeeListslistView.Columns.Add("Radni sati(ovaj tjedan);", -1, HorizontalAlignment.Left); EmployeeListslistView.Columns.Add("Zavrsenih projekata:", -1, HorizontalAlignment.Left); EmployeeListslistView.Columns.Add("Trenutno aktivnih projekata:", -1, HorizontalAlignment.Left); EmployeeListslistView.Columns.Add("Nadolazeci projekti:", -1, HorizontalAlignment.Left); foreach (var Employee in EmployeesList.GetAllEmployees()) { var EmployeeProperty = new ListViewItem(Employee.Name); if (EmployeesOnProject.EmployeeThisWeeksWorkHours(Employee.OIB) > 40) { EmployeeProperty.BackColor = Color.DarkSlateGray; //stavi novu } else if (EmployeesOnProject.EmployeeThisWeeksWorkHours(Employee.OIB) < 30) { EmployeeProperty.BackColor = Color.Goldenrod; } else { EmployeeProperty.BackColor = Color.Aquamarine; } EmployeeProperty.SubItems.Add(Employee.Surname); EmployeeProperty.SubItems.Add($"{Employee.BirthDay:d}"); EmployeeProperty.SubItems.Add(Employee.OIB); EmployeeProperty.SubItems.Add(Employee.Rank.ToString()); EmployeeProperty.SubItems.Add(EmployeesOnProject.EmployeeThisWeeksWorkHours(Employee.OIB).ToString()); var FinishedProjects = 0; var ActiveProjects = 0; var FutureProjects = 0; foreach (var Project in EmployeesOnProject.GetProjectsByEmployee(Employee.OIB)) { if (Project.Finished()) { FinishedProjects++; } if (Project.Started() && !Project.Finished()) { ActiveProjects++; } if (Project.Started()) { FutureProjects++; } } EmployeeProperty.SubItems.Add(FinishedProjects.ToString()); EmployeeProperty.SubItems.Add(ActiveProjects.ToString()); EmployeeProperty.SubItems.Add(FutureProjects.ToString()); EmployeeListslistView.Items.Add(EmployeeProperty); } }