|
@@ -0,0 +1,76 @@
|
|
|
+using System.Linq;
|
|
|
+using Avalonia.Controls;
|
|
|
+using Avalonia.Interactivity;
|
|
|
+using FirstSlice.Models;
|
|
|
+using Microsoft.EntityFrameworkCore;
|
|
|
+
|
|
|
+namespace FirstSlice;
|
|
|
+
|
|
|
+public partial class MainWindow : Window
|
|
|
+{
|
|
|
+ public MainWindow()
|
|
|
+ {
|
|
|
+ InitializeComponent();
|
|
|
+
|
|
|
+ RoleTable.Items = Helper.GetContext().Roles.ToList();
|
|
|
+ UserTable.Items = Helper.GetContext().Users.Include(x => x.FkRole).ToList();
|
|
|
+ }
|
|
|
+
|
|
|
+ private async void OnAddUserClick(object? sender, RoutedEventArgs e)
|
|
|
+ {
|
|
|
+ var userWindow = new UserWindow();
|
|
|
+ await userWindow.ShowDialog(this);
|
|
|
+
|
|
|
+ UserTable.Items = Helper.GetContext().Users.Include(x => x.FkRole).ToList();
|
|
|
+ }
|
|
|
+
|
|
|
+ private void OnDeleteUserClick(object? sender, RoutedEventArgs e)
|
|
|
+ {
|
|
|
+ var user = UserTable.SelectedItem as User;
|
|
|
+
|
|
|
+ Helper.GetContext().Users.Remove(user);
|
|
|
+ Helper.GetContext().SaveChanges();
|
|
|
+
|
|
|
+ UserTable.Items = Helper.GetContext().Users.Include(x => x.FkRole).ToList();
|
|
|
+ }
|
|
|
+
|
|
|
+ private async void OnUserTableDoubleTapped(object? sender, RoutedEventArgs e)
|
|
|
+ {
|
|
|
+ DataGrid grid = sender as DataGrid;
|
|
|
+ var user = grid.SelectedItem as User;
|
|
|
+
|
|
|
+ var userWindow = new UserWindow(user);
|
|
|
+ await userWindow.ShowDialog(this);
|
|
|
+
|
|
|
+ UserTable.Items = Helper.GetContext().Users.Include(x => x.FkRole).ToList();
|
|
|
+ }
|
|
|
+
|
|
|
+ private async void OnAddRoleClick(object? sender, RoutedEventArgs e)
|
|
|
+ {
|
|
|
+ var role = new RoleWindow();
|
|
|
+ await role.ShowDialog(this);
|
|
|
+
|
|
|
+ RoleTable.Items = Helper.GetContext().Roles.ToList();
|
|
|
+ }
|
|
|
+
|
|
|
+ private void OnDeleteRoleClick(object? sender, RoutedEventArgs e)
|
|
|
+ {
|
|
|
+ var role = RoleTable.SelectedItem as Role;
|
|
|
+
|
|
|
+ Helper.GetContext().Roles.Remove(role);
|
|
|
+ Helper.GetContext().SaveChanges();
|
|
|
+
|
|
|
+ RoleTable.Items = Helper.GetContext().Roles.ToList();
|
|
|
+ }
|
|
|
+
|
|
|
+ private async void OnRoleTableDoubleTapped(object? sender, RoutedEventArgs e)
|
|
|
+ {
|
|
|
+ DataGrid grid = sender as DataGrid;
|
|
|
+ var role = grid.SelectedItem as Role;
|
|
|
+
|
|
|
+ var roleWindow = new RoleWindow(role);
|
|
|
+ await roleWindow.ShowDialog(this);
|
|
|
+
|
|
|
+ RoleTable.Items = Helper.GetContext().Roles.ToList();
|
|
|
+ }
|
|
|
+}
|