|
@@ -25,6 +25,7 @@ namespace Hotel_Course_Project
|
|
public byte[] cotractImage;
|
|
public byte[] cotractImage;
|
|
public string FilePath;
|
|
public string FilePath;
|
|
public Staff _staff;
|
|
public Staff _staff;
|
|
|
|
+ public int IdStaff = 0;
|
|
public StaffChangeOrAddPage(Staff staff)
|
|
public StaffChangeOrAddPage(Staff staff)
|
|
{
|
|
{
|
|
InitializeComponent();
|
|
InitializeComponent();
|
|
@@ -35,35 +36,56 @@ namespace Hotel_Course_Project
|
|
SStaffRole.Text = staff.ToString();
|
|
SStaffRole.Text = staff.ToString();
|
|
StaffChangeOrAddBtn.Content = "Изменить данные";
|
|
StaffChangeOrAddBtn.Content = "Изменить данные";
|
|
this.Title = "Информация о сотруднике";
|
|
this.Title = "Информация о сотруднике";
|
|
|
|
+ IdStaff = staff.Id;
|
|
|
|
+ StaffDeleteOrRestoreBtn.Visibility = Visibility.Visible;
|
|
|
|
+ if (staff.Id_PersStatus == 1)
|
|
|
|
+ {
|
|
|
|
+ StaffDeleteOrRestoreBtn.Content = "Удалить сотрудника";
|
|
|
|
+ }
|
|
|
|
+ else
|
|
|
|
+ {
|
|
|
|
+ StaffDeleteOrRestoreBtn.Content = "Востановить сотрудника";
|
|
|
|
+ }
|
|
}
|
|
}
|
|
else
|
|
else
|
|
{
|
|
{
|
|
StaffChangeOrAddBtn.Content = "Добавить сотрудника";
|
|
StaffChangeOrAddBtn.Content = "Добавить сотрудника";
|
|
this.Title = "Окно добавления сотрудника";
|
|
this.Title = "Окно добавления сотрудника";
|
|
|
|
+ StaffDeleteOrRestoreBtn.Visibility = Visibility.Collapsed;
|
|
}
|
|
}
|
|
SStaffRole.ItemsSource = DataBase.db.StaffRole.ToList();
|
|
SStaffRole.ItemsSource = DataBase.db.StaffRole.ToList();
|
|
if (staff == null || staff.PhotoContract == null)
|
|
if (staff == null || staff.PhotoContract == null)
|
|
{
|
|
{
|
|
- SContractPhoto.Source = new BitmapImage(new Uri("pack://application:,,,/Resources/no_picture.jpg"));
|
|
|
|
|
|
+ SContractPhoto.Source = new BitmapImage(new Uri("pack://application:,,,/Resources/no_picture.jpg"));
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
|
|
private void StaffChangeOrAddBtn_Click(object sender, RoutedEventArgs e)
|
|
private void StaffChangeOrAddBtn_Click(object sender, RoutedEventArgs e)
|
|
{
|
|
{
|
|
- var existUser = DataBase.db.Staff.SingleOrDefault(item => item.Login == SLogin.Text);
|
|
|
|
- if (existUser != null && DataContext == null)
|
|
|
|
|
|
+
|
|
|
|
+ if (DataContext == null)
|
|
{
|
|
{
|
|
- MessageBox.Show("Такой логин уже имеется в базе данных");
|
|
|
|
- return;
|
|
|
|
|
|
+ var existUser = DataBase.db.Staff.SingleOrDefault(item => item.Login == SLogin.Text);
|
|
|
|
+ if (existUser != null && DataContext == null)
|
|
|
|
+ {
|
|
|
|
+ MessageBox.Show("Такой логин уже имеется в базе данных!");
|
|
|
|
+ return;
|
|
|
|
+ }
|
|
}
|
|
}
|
|
- else if (SLName.Text == null || SFName.Text == null || SLogin.Text == null || SPassword.Text == null || SContractPhoto == null)
|
|
|
|
|
|
+ if (SLName.Text == null || SFName.Text == null || SLogin.Text == null || SPassword.Text == null)
|
|
{
|
|
{
|
|
- MessageBox.Show("Ключевые поля не были заполнены");
|
|
|
|
|
|
+ MessageBox.Show("Ключевые поля не были заполнены!");
|
|
return;
|
|
return;
|
|
}
|
|
}
|
|
else
|
|
else
|
|
{
|
|
{
|
|
- if( DataContext == null)
|
|
|
|
|
|
+ var existUserS = DataBase.db.Staff.SingleOrDefault(item => item.Login == SLogin.Text && item.Id != IdStaff);
|
|
|
|
+ if (existUserS != null)
|
|
|
|
+ {
|
|
|
|
+ MessageBox.Show("Такой логин уже имеется в базе данных у другого сотрудника!");
|
|
|
|
+ return;
|
|
|
|
+ }
|
|
|
|
+ else if (DataContext == null)
|
|
{
|
|
{
|
|
int numRole = DataBase.db.StaffRole.SingleOrDefault(item => item.Name == SStaffRole.Text).Id;
|
|
int numRole = DataBase.db.StaffRole.SingleOrDefault(item => item.Name == SStaffRole.Text).Id;
|
|
Staff staff = new Staff()
|
|
Staff staff = new Staff()
|
|
@@ -79,19 +101,34 @@ namespace Hotel_Course_Project
|
|
};
|
|
};
|
|
DataBase.db.Staff.Add(staff);
|
|
DataBase.db.Staff.Add(staff);
|
|
var lastId = DataBase.db.Staff.OrderByDescending(item => item.Id).FirstOrDefault().Id;
|
|
var lastId = DataBase.db.Staff.OrderByDescending(item => item.Id).FirstOrDefault().Id;
|
|
- DataBase.db.SaveChanges();
|
|
|
|
|
|
+ DataBase.db.SaveChanges();
|
|
|
|
+ MessageBox.Show("Сотрудник добавлен в базу.");
|
|
}
|
|
}
|
|
else
|
|
else
|
|
{
|
|
{
|
|
-
|
|
|
|
|
|
+ MessageBox.Show("Данные по сотрудинку изменены.");
|
|
|
|
+ _staff.PhotoContract = cotractImage;
|
|
|
|
+ DataBase.db.SaveChanges();
|
|
}
|
|
}
|
|
|
|
+ PChanger.MainFrame.GoBack();
|
|
}
|
|
}
|
|
|
|
|
|
}
|
|
}
|
|
|
|
|
|
private void StaffDeleteOrRestoreBtn_Click(object sender, RoutedEventArgs e)
|
|
private void StaffDeleteOrRestoreBtn_Click(object sender, RoutedEventArgs e)
|
|
{
|
|
{
|
|
-
|
|
|
|
|
|
+ if (_staff.Id_PersStatus == 1)
|
|
|
|
+ {
|
|
|
|
+ _staff.Id_PersStatus = 2;
|
|
|
|
+ MessageBox.Show("Статус пользователя изменился на <удалён>");
|
|
|
|
+ }
|
|
|
|
+ else
|
|
|
|
+ {
|
|
|
|
+ _staff.Id_PersStatus = 1;
|
|
|
|
+ MessageBox.Show("Статус пользователя восстановлен");
|
|
|
|
+ }
|
|
|
|
+ DataBase.db.SaveChanges();
|
|
|
|
+ PChanger.MainFrame.GoBack();
|
|
}
|
|
}
|
|
|
|
|
|
private void SContractPhoto_MouseLeftButtonDown(object sender, MouseButtonEventArgs e)
|
|
private void SContractPhoto_MouseLeftButtonDown(object sender, MouseButtonEventArgs e)
|