/// <summary> /// Метод нажатия по кнопке добавления работника /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void AddEmployee_Click(object sender, RoutedEventArgs e) { Employee result = null; if (CheckBoxes()) { switch (EmplTypes.Text) { case "Менеджер": result = getManager(); dep.AddWorker(result); break; case "Высший менеджер": result = getHighManager(); dep.AddWorker(result); break; default: result = getInternt(); dep.AddWorker(result); break; } this.Close(); } }
/// <summary> /// Добавляет сотрудника в отдел /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void HireWorkerOnClick(object sender, RoutedEventArgs e) { if (string.IsNullOrEmpty(DivisionID.Text)) { MessageBox.Show("Отдел не выбран"); return; } if (string.IsNullOrEmpty(newWorkerName.Text) || string.IsNullOrEmpty(newWorkerRate.Text) || string.IsNullOrEmpty(newWorkerPost.Text)) { MessageBox.Show("Не все поля заполнены"); return; } Department department = organization.FindDepartmentByID(int.Parse(DivisionID.Text)); if (department == null) { MessageBox.Show("Отдел не найден"); return; } try { if (IsNewWorkerIntern.IsChecked == true) { department.AddWorker( new Intern(newWorkerName.Text, newWorkerPost.Text, department, int.Parse(newWorkerRate.Text)) ); } else { department.AddWorker( new Employee(newWorkerName.Text, newWorkerPost.Text, department, int.Parse(newWorkerRate.Text)) ); } organization.CalculateSalary(); //ObservableCollection<Worker> allWorkers = new ObservableCollection<Worker>(department.Workers); //allWorkers.Add(department.Manager); //WorkersListView.ItemsSource = allWorkers; newWorkerName.Clear(); newWorkerPost.Clear(); newWorkerRate.Clear(); IsNewWorkerIntern.IsChecked = false; } catch (Exception ex) { MessageBox.Show(ex.Message); return; } }