MainForm.cs 1.8 KB

1234567891011121314151617181920212223242526272829303132333435363738394041
  1. using System;
  2. using System.Windows.Forms;
  3. namespace RestaurantApp
  4. {
  5. public partial class MainForm : Form
  6. {
  7. public MainForm()
  8. {
  9. InitializeComponent();
  10. this.Text = $"Ресторан - {Program.CurrentUser}";
  11. lblUser.Text = $"{Program.CurrentUser} ({Program.CurrentRole})";
  12. // Разграничение прав доступа
  13. bool isAdmin = Program.CurrentRole == "admin";
  14. bool isManager = Program.CurrentRole == "manager";
  15. bool isWaiter = Program.CurrentRole == "waiter";
  16. // Только admin и manager могут редактировать сотрудников и смотреть отчёты
  17. сотрудникиToolStripMenuItem.Enabled = isAdmin || isManager;
  18. отчётыToolStripMenuItem.Enabled = isAdmin || isManager;
  19. // Подписка на события меню
  20. клиентыToolStripMenuItem.Click += (s, e) => OpenForm(new ClientForm());
  21. блюдаToolStripMenuItem.Click += (s, e) => OpenForm(new DishForm());
  22. сотрудникиToolStripMenuItem.Click += (s, e) => OpenForm(new EmployeeForm());
  23. заказыToolStripMenuItem.Click += (s, e) => OpenForm(new OrderForm());
  24. бронированияToolStripMenuItem.Click += (s, e) => OpenForm(new ReservationForm());
  25. отчётыToolStripMenuItem.Click += (s, e) => OpenForm(new ReportForm());
  26. выходToolStripMenuItem.Click += (s, e) => { this.Close(); Application.Exit(); };
  27. }
  28. private void OpenForm(Form form)
  29. {
  30. form.MdiParent = this;
  31. form.WindowState = FormWindowState.Maximized;
  32. form.Show();
  33. }
  34. }
  35. }