예제 #1
0
        async private static void UpdateEmployeeExecuted(object sender, ExecutedRoutedEventArgs e)
        {
            Employee empl = CurrentEmployee.ApplyChanges();

            if (empl.Id != 0)
            {
                bool isDone = await Data.UpdateEmployee(empl);

                if (isDone)
                {
                    CurrentEmployee.Wrap(empl);
                    CurrentEmployee.SetEdit();
                    Inspection.NotifySuccess(log, $"Employee {empl} Updated!");
                }
                else
                {
                    Inspection.NotifyError(log, "Сan't update!");
                }
            }
            e.Handled = true;
        }
예제 #2
0
        async private static void SaveEmployeeExecuted(object sender, ExecutedRoutedEventArgs e)
        {
            if (CurrentEmployee.Skill.Level > 2)
            {
                Inspection.NotifyError(log, "A new employee can not be assigned a level above 2!");
                return;
            }
            Employee empl = CurrentEmployee.ApplyChanges();

            if (empl.Id == 0)
            {
                if (IsDepartmentAlreadyFull(empl))
                {
                    MessageBoxResult res =
                        MessageBox.Show("The Department is already full \r\n"
                                        + "Please, confirm the appointment of the employee as a Director",
                                        "Warning",
                                        MessageBoxButton.YesNo,
                                        MessageBoxImage.Warning);
                    if (res == MessageBoxResult.No)
                    {
                        return;
                    }
                }
                bool isDone = await Data.AddEmployeeAsync(empl);

                if (isDone)
                {
                    CurrentEmployee.Wrap(empl);
                    CurrentEmployee.SetEdit();
                    Inspection.NotifySuccess(log, $"Employee {empl} Saved!");
                }
                else
                {
                    Inspection.NotifyError(log, "Can't save!");
                }
            }
            e.Handled = true;
        }
예제 #3
0
 private static void EditEmployeeExecuted(object sender, ExecutedRoutedEventArgs e)
 {
     CurrentEmployee.SetEdit();
     ActivateView("PageEmployeeDetails");
     e.Handled = true;
 }