diff --git a/AvaloniaApplication14_Inventory_300326/Models/DataBase/EmployeeRepository.cs b/AvaloniaApplication14_Inventory_300326/Models/DataBase/EmployeeRepository.cs index 2c452f0..7bb79e0 100644 --- a/AvaloniaApplication14_Inventory_300326/Models/DataBase/EmployeeRepository.cs +++ b/AvaloniaApplication14_Inventory_300326/Models/DataBase/EmployeeRepository.cs @@ -75,12 +75,39 @@ public class EmployeeRepository : BaseRepository, IDisposable public override bool Update(Employee item) { - throw new NotImplementedException(); + string sql = "UPDATE TechInventory.Employees SET FullName=@FullName, PositionId=@PositionId WHERE Id=@Id;"; + try + { + using var mc = new MySqlCommand(sql, connection); + mc.Parameters.AddWithValue("@Id", item.Id); + mc.Parameters.AddWithValue("@FullName", item.FullName); + mc.Parameters.AddWithValue("@PositionId", item.PositionId); + mc.ExecuteNonQuery(); + return true; + } + catch (Exception e) + { + Console.WriteLine(e); + return false; + } } public override bool Add(Employee item) { - throw new NotImplementedException(); + string sql = "INSERT INTO TechInventory.Employees (FullName, PositionId) VALUES(@FullName, @PositionId);"; + try + { + using var mc = new MySqlCommand(sql, connection); + mc.Parameters.AddWithValue("@FullName", item.FullName); + mc.Parameters.AddWithValue("@PositionId", item.PositionId); + mc.ExecuteNonQuery(); + return true; + } + catch (Exception e) + { + Console.WriteLine(e); + return false; + } } public void Dispose() diff --git a/AvaloniaApplication14_Inventory_300326/Models/DataBase/EquipmentRepository.cs b/AvaloniaApplication14_Inventory_300326/Models/DataBase/EquipmentRepository.cs index 712f043..a7fc265 100644 --- a/AvaloniaApplication14_Inventory_300326/Models/DataBase/EquipmentRepository.cs +++ b/AvaloniaApplication14_Inventory_300326/Models/DataBase/EquipmentRepository.cs @@ -58,11 +58,48 @@ public class EquipmentRepository : BaseRepository, IDisposable public override bool Update(Equipment item) { - throw new NotImplementedException(); + string sql = "UPDATE TechInventory.Equipment SET InvNumber=@InvNum, Name=@Name, PurchaseDate=@Date, Cost=@Cost, IsWrittenOff=@IsWrittenOff, CurrentEmployeeId=@CurrentEmployeeId WHERE Id=@Id;"; + try + { + using var mc = new MySqlCommand(sql, connection); + mc.Parameters.AddWithValue("@Id", item.Id); + mc.Parameters.AddWithValue("@InvNum", item.InvNumber); + mc.Parameters.AddWithValue("@Name", item.Name); + mc.Parameters.AddWithValue("@Date", item.Date); + mc.Parameters.AddWithValue("@Cost", item.Cost); + mc.Parameters.AddWithValue("@IsWrittenOff", item.IsWrittenOff?1:0); + mc.Parameters.AddWithValue("@CurrentEmployeeId", item.CurrentEmployeeId); + mc.ExecuteNonQuery(); + + return true; + } + catch (Exception e) + { + Console.WriteLine(e); + return false; + } } public override bool Add(Equipment item) { - throw new NotImplementedException(); + string sql = "INSERT INTO TechInventory.Equipment (InvNumber, Name, PurchaseDate, Cost, IsWrittenOff, CurrentEmployeeId) VALUES(@InvNum, @Name, @Date, @Cost, @IsWrittenOff, @CurrentEmployeeId)"; + try + { + var mc = new MySqlCommand(sql, connection); + mc.Parameters.AddWithValue("@InvNum", item.InvNumber); + mc.Parameters.AddWithValue("@Name", item.Name); + mc.Parameters.AddWithValue("@Date", item.Date); + mc.Parameters.AddWithValue("@Cost", item.Cost); + mc.Parameters.AddWithValue("@IsWrittenOff", item.IsWrittenOff); + mc.Parameters.AddWithValue("@CurrentEmployeeId", item.CurrentEmployeeId); + mc.ExecuteNonQuery(); + + return true; + } + catch (Exception e) + { + Console.WriteLine(e); + return false; + } } } \ No newline at end of file diff --git a/AvaloniaApplication14_Inventory_300326/Models/Factories/EquipmentFactory.cs b/AvaloniaApplication14_Inventory_300326/Models/Factories/EquipmentFactory.cs index c129800..dcdef66 100644 --- a/AvaloniaApplication14_Inventory_300326/Models/Factories/EquipmentFactory.cs +++ b/AvaloniaApplication14_Inventory_300326/Models/Factories/EquipmentFactory.cs @@ -13,7 +13,8 @@ public static class EquipmentFactory result.Name = visual.Name; result.Date = DateOnly.FromDateTime(visual.Date.Value.DateTime); result.Cost = visual.Cost; - result.IsWrittenOff = visual.IsWrittenOff != "Нет"; + result.IsWrittenOff = visual.IsWrittenOff; + result.Id = visual.Id; result.CurrentEmployeeId = visual.CurrentEmployee.Id; return result; diff --git a/AvaloniaApplication14_Inventory_300326/Models/Factories/EquipmentVisualFactory.cs b/AvaloniaApplication14_Inventory_300326/Models/Factories/EquipmentVisualFactory.cs index fa03f6e..741428e 100644 --- a/AvaloniaApplication14_Inventory_300326/Models/Factories/EquipmentVisualFactory.cs +++ b/AvaloniaApplication14_Inventory_300326/Models/Factories/EquipmentVisualFactory.cs @@ -14,8 +14,9 @@ public static class EquipmentVisualFactory result.Name = equipment.Name; result.Date = new DateTimeOffset(equipment.Date.ToDateTime(TimeOnly.MinValue)); result.Cost = equipment.Cost; - result.IsWrittenOff = equipment.IsWrittenOff?"Да":"Нет"; - + result.IsWrittenOff = equipment.IsWrittenOff; + result.IsWrittenOffString = equipment.IsWrittenOff ? "Да" : "Нет"; + return result; } } \ No newline at end of file diff --git a/AvaloniaApplication14_Inventory_300326/Models/Models/Employee.cs b/AvaloniaApplication14_Inventory_300326/Models/Models/Employee.cs index 496d5cc..e976f98 100644 --- a/AvaloniaApplication14_Inventory_300326/Models/Models/Employee.cs +++ b/AvaloniaApplication14_Inventory_300326/Models/Models/Employee.cs @@ -2,6 +2,11 @@ namespace AvaloniaApplication14_Inventory_300326.Models.Models; public class Employee : DBObj { - public string FullName { get; set; } + public string FullName { get; set; } = ""; public int PositionId { get; set; } + + public bool IsNew() + { + return FullName == "" && PositionId == 0; + } } \ No newline at end of file diff --git a/AvaloniaApplication14_Inventory_300326/Models/Models/Equipment.cs b/AvaloniaApplication14_Inventory_300326/Models/Models/Equipment.cs index fbd3e54..5177b8d 100644 --- a/AvaloniaApplication14_Inventory_300326/Models/Models/Equipment.cs +++ b/AvaloniaApplication14_Inventory_300326/Models/Models/Equipment.cs @@ -4,11 +4,23 @@ namespace AvaloniaApplication14_Inventory_300326.Models.Models; public class Equipment : DBObj { - public string InvNumber { get; set; } - public string Name { get; set; } - public DateOnly Date { get; set; } - public decimal Cost { get; set; } - public bool IsWrittenOff {get; set;} - public int CurrentEmployeeId { get; set; } + public string InvNumber { get; set; } = ""; + public string Name { get; set; } = ""; + public DateOnly Date { get; set; } = DateOnly.FromDateTime(DateTime.Now); + public decimal Cost { get; set; } = 0; + public bool IsWrittenOff {get; set;} = false; + public int CurrentEmployeeId { get; set; } = 0; + + public bool IsNew() + { + if (InvNumber == "" && Name == "" && Date == DateOnly.FromDateTime(DateTime.Now) && Cost == 0 && !IsWrittenOff && CurrentEmployeeId == 0) + { + return true; + } + else + { + return false; + } + } } \ No newline at end of file diff --git a/AvaloniaApplication14_Inventory_300326/Models/Models/EquipmentVisual.cs b/AvaloniaApplication14_Inventory_300326/Models/Models/EquipmentVisual.cs index 5490e1a..c2e08dd 100644 --- a/AvaloniaApplication14_Inventory_300326/Models/Models/EquipmentVisual.cs +++ b/AvaloniaApplication14_Inventory_300326/Models/Models/EquipmentVisual.cs @@ -9,7 +9,8 @@ public class EquipmentVisual public string Name { get; set; } public DateTimeOffset? Date { get; set; } public decimal Cost { get; set; } - public string IsWrittenOff { get; set; } + public bool IsWrittenOff { get; set; } + public string IsWrittenOffString { get; set; } public Employee CurrentEmployee { get; set; } } \ No newline at end of file diff --git a/AvaloniaApplication14_Inventory_300326/ViewModels/EmployeeEditingWindowViewModel.cs b/AvaloniaApplication14_Inventory_300326/ViewModels/EmployeeEditingWindowViewModel.cs index 2562680..4c6a836 100644 --- a/AvaloniaApplication14_Inventory_300326/ViewModels/EmployeeEditingWindowViewModel.cs +++ b/AvaloniaApplication14_Inventory_300326/ViewModels/EmployeeEditingWindowViewModel.cs @@ -1,6 +1,31 @@ +using System; +using System.Collections.ObjectModel; +using AvaloniaApplication14_Inventory_300326.Models.DataBase; +using AvaloniaApplication14_Inventory_300326.Models.Models; +using AvaloniaApplication14_Inventory_300326.Views; +using CommunityToolkit.Mvvm.ComponentModel; +using Microsoft.Extensions.DependencyInjection; + namespace AvaloniaApplication14_Inventory_300326.ViewModels; -public class EmployeeEditingWindowViewModel : ViewModelBase +public partial class EmployeeEditingWindowViewModel : ViewModelBase { + private EmployeeEditingWindow _currentWindow; + private IServiceProvider _serviceProvider; + private bool _isEditing; + [ObservableProperty] private ObservableCollection _positions; + public EmployeeEditingWindowViewModel(IServiceProvider serviceProvider, Employee employee) + { + _serviceProvider = serviceProvider; + using (var repo = _serviceProvider.GetService()) + { + Positions = new ObservableCollection(repo.GetAll()); + } + } + + public void SetScreen(EmployeeEditingWindow window) + { + _currentWindow = window; + } } \ No newline at end of file diff --git a/AvaloniaApplication14_Inventory_300326/ViewModels/EquipmentEditingWindowViewModel.cs b/AvaloniaApplication14_Inventory_300326/ViewModels/EquipmentEditingWindowViewModel.cs index 350a1ea..b718017 100644 --- a/AvaloniaApplication14_Inventory_300326/ViewModels/EquipmentEditingWindowViewModel.cs +++ b/AvaloniaApplication14_Inventory_300326/ViewModels/EquipmentEditingWindowViewModel.cs @@ -1,29 +1,85 @@ +using System; +using System.Collections.ObjectModel; +using System.Linq; +using AvaloniaApplication14_Inventory_300326.Models.DataBase; using AvaloniaApplication14_Inventory_300326.Models.Factoryes; using AvaloniaApplication14_Inventory_300326.Models.Models; using AvaloniaApplication14_Inventory_300326.Views; using CommunityToolkit.Mvvm.ComponentModel; +using CommunityToolkit.Mvvm.Input; +using Microsoft.Extensions.DependencyInjection; namespace AvaloniaApplication14_Inventory_300326.ViewModels; public partial class EquipmentEditingWindowViewModel : ViewModelBase { private EquipmentEditingWindow _currentWindow; - [ObservableProperty] private EquipmentVisual _equipment; + private bool _isEditing; + private EquipmentVisual _equipment; + private IServiceProvider _serviceProvider; + + [ObservableProperty] private string _name; + [ObservableProperty] private string _invNumber; + [ObservableProperty] private DateTimeOffset? _date; + [ObservableProperty] private decimal _cost; + [ObservableProperty] private bool _isWrittenOff; + [ObservableProperty] private Employee _currentEmployee; + [ObservableProperty] private ObservableCollection _employees; - public EquipmentEditingWindowViewModel(Equipment equipment) + [RelayCommand] + private void Confrm() { - Equipment = EquipmentVisualFactory.CreateFromEquipment(equipment); + _equipment.InvNumber = InvNumber; + _equipment.Date = Date; + _equipment.Cost = Cost; + _equipment.IsWrittenOff = IsWrittenOff; + _equipment.CurrentEmployee = CurrentEmployee; + _equipment.Name = Name; + + using (var repo = _serviceProvider.GetService()) + { + if (_isEditing) + { + repo.Update(EquipmentFactory.CreateFromVisual(_equipment)); + } + else + { + repo.Add(EquipmentFactory.CreateFromVisual(_equipment)); + } + } + _currentWindow.Close(); + } + + [RelayCommand] + private void Close() + { + _currentWindow.Close(); + } + + public EquipmentEditingWindowViewModel(IServiceProvider serviceProvider, Equipment equipment) + { + _serviceProvider = serviceProvider; + _isEditing = !equipment.IsNew(); + using (var repo = _serviceProvider.GetService()) + { + _equipment = EquipmentVisualFactory.CreateFromEquipment(equipment); + _equipment.CurrentEmployee = repo.GetById(equipment.CurrentEmployeeId); + } + Name = _equipment.Name; + InvNumber = _equipment.InvNumber; + Date = _equipment.Date; + Cost = _equipment.Cost; + IsWrittenOff = _equipment.IsWrittenOff; + using (var repo = _serviceProvider.GetService()) + { + Employees = new ObservableCollection(repo.GetAll()); + } + + CurrentEmployee = Employees.FirstOrDefault(o => o.Id == equipment.CurrentEmployeeId); } public void SetWindow(EquipmentEditingWindow window) { _currentWindow = window; - if (Equipment == EquipmentVisualFactory.CreateFromEquipment(new Equipment())) - { - _currentWindow.OkButton.Content = "Изменить"; - } - else - { - _currentWindow.OkButton.Content = "Добавить"; - } + _currentWindow.OkButton.Content = _isEditing ? "Изменить" : "Добавить"; } } \ No newline at end of file diff --git a/AvaloniaApplication14_Inventory_300326/ViewModels/MainWindowViewModel.cs b/AvaloniaApplication14_Inventory_300326/ViewModels/MainWindowViewModel.cs index 4f7430d..a4ddb35 100644 --- a/AvaloniaApplication14_Inventory_300326/ViewModels/MainWindowViewModel.cs +++ b/AvaloniaApplication14_Inventory_300326/ViewModels/MainWindowViewModel.cs @@ -3,6 +3,7 @@ using System.Collections.Generic; using System.Collections.ObjectModel; using System.Linq; using System.Threading; +using System.Threading.Tasks; using Avalonia.Controls; using Avalonia.Data; using Avalonia.Input; @@ -31,6 +32,36 @@ public partial class MainWindowViewModel : ViewModelBase [ObservableProperty] private EmployeeVisual _selectedEmployeeVisual; [ObservableProperty] private Position _selectedPosition; + + [RelayCommand] + private async Task AddEntity() + { + switch (SelectedEntity.Id) + { + case 0: + + var equipment = new Equipment(); + var EquipmentVm = ActivatorUtilities.CreateInstance(_serviceProvider, equipment); + var EquipmentWin = ActivatorUtilities.CreateInstance(_serviceProvider, EquipmentVm); + await EquipmentWin.ShowDialog(_currentWindow); + GetTeches(); + + break; + case 1: + + var employee = new Employee(); + var EmployeeVm = ActivatorUtilities.CreateInstance(_serviceProvider, employee); + var EmployeeWin = ActivatorUtilities.CreateInstance(_serviceProvider, EmployeeVm); + await EmployeeWin.ShowDialog(_currentWindow); + GetTeches(); + + break; + case 2: + + break; + } + } + partial void OnSelectedEntityChanged(Entity value) { if (_currentWindow != null) @@ -135,11 +166,12 @@ public partial class MainWindowViewModel : ViewModelBase _currentWindow.ScrollViewerDataGridPos.IsVisible = true; } - private void DoubleTappedTechDataGrid() + private async Task DoubleTappedTechDataGrid() { var vm = ActivatorUtilities.CreateInstance(_serviceProvider, EquipmentFactory.CreateFromVisual(SelectedEquipmentVisual)); var win = ActivatorUtilities.CreateInstance(_serviceProvider, vm); - win.ShowDialog(_currentWindow); + await win.ShowDialog(_currentWindow); + GetTeches(); } private void DoubleTappedEmployeeDataGrid() diff --git a/AvaloniaApplication14_Inventory_300326/Views/EmployeeEditingWindow.axaml b/AvaloniaApplication14_Inventory_300326/Views/EmployeeEditingWindow.axaml index 6e9d844..1c15694 100644 --- a/AvaloniaApplication14_Inventory_300326/Views/EmployeeEditingWindow.axaml +++ b/AvaloniaApplication14_Inventory_300326/Views/EmployeeEditingWindow.axaml @@ -2,13 +2,23 @@ xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:d="http://schemas.microsoft.com/expression/blend/2008" xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" + xmlns:vm="using:AvaloniaApplication14_Inventory_300326.ViewModels" mc:Ignorable="d" d:DesignWidth="800" d:DesignHeight="450" x:Class="AvaloniaApplication14_Inventory_300326.Views.EmployeeEditingWindow" - Title="EmployeeEditingWindow"> + Title="EmployeeWindow" + x:DataType="vm:EmployeeEditingWindowViewModel" + SizeToContent="WidthAndHeight" + WindowStartupLocation="CenterOwner"> - - + + + + + + + + diff --git a/AvaloniaApplication14_Inventory_300326/Views/EmployeeEditingWindow.axaml.cs b/AvaloniaApplication14_Inventory_300326/Views/EmployeeEditingWindow.axaml.cs index e4af99d..aae1535 100644 --- a/AvaloniaApplication14_Inventory_300326/Views/EmployeeEditingWindow.axaml.cs +++ b/AvaloniaApplication14_Inventory_300326/Views/EmployeeEditingWindow.axaml.cs @@ -1,13 +1,16 @@ using Avalonia; using Avalonia.Controls; using Avalonia.Markup.Xaml; +using AvaloniaApplication14_Inventory_300326.ViewModels; namespace AvaloniaApplication14_Inventory_300326.Views; public partial class EmployeeEditingWindow : Window { - public EmployeeEditingWindow() + public EmployeeEditingWindow(EmployeeEditingWindowViewModel viewModel) { + DataContext = viewModel; InitializeComponent(); + viewModel.SetScreen(this); } } \ No newline at end of file diff --git a/AvaloniaApplication14_Inventory_300326/Views/EquipmentEditingWindow.axaml b/AvaloniaApplication14_Inventory_300326/Views/EquipmentEditingWindow.axaml index c58b128..b4d9010 100644 --- a/AvaloniaApplication14_Inventory_300326/Views/EquipmentEditingWindow.axaml +++ b/AvaloniaApplication14_Inventory_300326/Views/EquipmentEditingWindow.axaml @@ -6,42 +6,50 @@ mc:Ignorable="d" d:DesignWidth="800" d:DesignHeight="450" x:Class="AvaloniaApplication14_Inventory_300326.Views.EquipmentEditingWindow" x:DataType="vm:EquipmentEditingWindowViewModel" - Title="EquipmentEditingWindow"> + Title="EquipmentEditingWindow" + SizeToContent="WidthAndHeight" + WindowStartupLocation="CenterOwner"> - + - + - + - + - + - + + + + + + + - - + + diff --git a/AvaloniaApplication14_Inventory_300326/Views/MainWindow.axaml b/AvaloniaApplication14_Inventory_300326/Views/MainWindow.axaml index 4bd621a..9052b5f 100644 --- a/AvaloniaApplication14_Inventory_300326/Views/MainWindow.axaml +++ b/AvaloniaApplication14_Inventory_300326/Views/MainWindow.axaml @@ -12,7 +12,7 @@ - + @@ -20,7 +20,7 @@ - + @@ -29,7 +29,7 @@ - + diff --git a/AvaloniaApplication14_Inventory_300326/obj/Debug/net9.0/Avalonia/resources b/AvaloniaApplication14_Inventory_300326/obj/Debug/net9.0/Avalonia/resources index e4612a0..985e40c 100644 Binary files a/AvaloniaApplication14_Inventory_300326/obj/Debug/net9.0/Avalonia/resources and b/AvaloniaApplication14_Inventory_300326/obj/Debug/net9.0/Avalonia/resources differ diff --git a/AvaloniaApplication14_Inventory_300326/obj/Debug/net9.0/AvaloniaApplication14_Inventory_300326.AssemblyInfo.cs b/AvaloniaApplication14_Inventory_300326/obj/Debug/net9.0/AvaloniaApplication14_Inventory_300326.AssemblyInfo.cs index 58634ee..774a2f5 100644 --- a/AvaloniaApplication14_Inventory_300326/obj/Debug/net9.0/AvaloniaApplication14_Inventory_300326.AssemblyInfo.cs +++ b/AvaloniaApplication14_Inventory_300326/obj/Debug/net9.0/AvaloniaApplication14_Inventory_300326.AssemblyInfo.cs @@ -13,7 +13,7 @@ using System.Reflection; [assembly: System.Reflection.AssemblyCompanyAttribute("AvaloniaApplication14_Inventory_300326")] [assembly: System.Reflection.AssemblyConfigurationAttribute("Debug")] [assembly: System.Reflection.AssemblyFileVersionAttribute("1.0.0.0")] -[assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0+211c219a7b912ccb4d85ae18d8c9a6ea6db420d4")] +[assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0+69e11179169a76d62cd0fe7694460e08d81c7480")] [assembly: System.Reflection.AssemblyProductAttribute("AvaloniaApplication14_Inventory_300326")] [assembly: System.Reflection.AssemblyTitleAttribute("AvaloniaApplication14_Inventory_300326")] [assembly: System.Reflection.AssemblyVersionAttribute("1.0.0.0")] diff --git a/AvaloniaApplication14_Inventory_300326/obj/Debug/net9.0/AvaloniaApplication14_Inventory_300326.AssemblyInfoInputs.cache b/AvaloniaApplication14_Inventory_300326/obj/Debug/net9.0/AvaloniaApplication14_Inventory_300326.AssemblyInfoInputs.cache index db5e833..b058cc2 100644 --- a/AvaloniaApplication14_Inventory_300326/obj/Debug/net9.0/AvaloniaApplication14_Inventory_300326.AssemblyInfoInputs.cache +++ b/AvaloniaApplication14_Inventory_300326/obj/Debug/net9.0/AvaloniaApplication14_Inventory_300326.AssemblyInfoInputs.cache @@ -1 +1 @@ -454401d59e479b388b4887324f8782d3eb2b2898eabb3e94f09f42fd002f2e16 +0576c4c81a455eeddc7b366511b3dde5f0890ec0fb52f054b63d3c32f7eb7b1c diff --git a/AvaloniaApplication14_Inventory_300326/obj/Debug/net9.0/AvaloniaApplication14_Inventory_300326.dll b/AvaloniaApplication14_Inventory_300326/obj/Debug/net9.0/AvaloniaApplication14_Inventory_300326.dll index 62aa023..5a8e112 100644 Binary files a/AvaloniaApplication14_Inventory_300326/obj/Debug/net9.0/AvaloniaApplication14_Inventory_300326.dll and b/AvaloniaApplication14_Inventory_300326/obj/Debug/net9.0/AvaloniaApplication14_Inventory_300326.dll differ diff --git a/AvaloniaApplication14_Inventory_300326/obj/Debug/net9.0/AvaloniaApplication14_Inventory_300326.pdb b/AvaloniaApplication14_Inventory_300326/obj/Debug/net9.0/AvaloniaApplication14_Inventory_300326.pdb index 95e8028..06f3778 100644 Binary files a/AvaloniaApplication14_Inventory_300326/obj/Debug/net9.0/AvaloniaApplication14_Inventory_300326.pdb and b/AvaloniaApplication14_Inventory_300326/obj/Debug/net9.0/AvaloniaApplication14_Inventory_300326.pdb differ diff --git a/AvaloniaApplication14_Inventory_300326/obj/Debug/net9.0/ref/AvaloniaApplication14_Inventory_300326.dll b/AvaloniaApplication14_Inventory_300326/obj/Debug/net9.0/ref/AvaloniaApplication14_Inventory_300326.dll index f7a7406..a30982d 100644 Binary files a/AvaloniaApplication14_Inventory_300326/obj/Debug/net9.0/ref/AvaloniaApplication14_Inventory_300326.dll and b/AvaloniaApplication14_Inventory_300326/obj/Debug/net9.0/ref/AvaloniaApplication14_Inventory_300326.dll differ diff --git a/AvaloniaApplication14_Inventory_300326/obj/Debug/net9.0/refint/AvaloniaApplication14_Inventory_300326.dll b/AvaloniaApplication14_Inventory_300326/obj/Debug/net9.0/refint/AvaloniaApplication14_Inventory_300326.dll index f7a7406..a30982d 100644 Binary files a/AvaloniaApplication14_Inventory_300326/obj/Debug/net9.0/refint/AvaloniaApplication14_Inventory_300326.dll and b/AvaloniaApplication14_Inventory_300326/obj/Debug/net9.0/refint/AvaloniaApplication14_Inventory_300326.dll differ