From 1bd96ae00f9d31f609b18e32b4edefcabd713aba Mon Sep 17 00:00:00 2001 From: Alek-ban Date: Thu, 18 Jun 2026 11:36:11 +0300 Subject: [PATCH] chore: fix some typos and some refactoring and small changes --- .../AmineContent/BrandCalibrationViewModel.cs | 64 +++++++++--------- .../AmineContent/BrandCalibrationView.axaml | 66 +++++++++---------- 2 files changed, 64 insertions(+), 66 deletions(-) diff --git a/GSS2/ViewModels/AmineContent/BrandCalibrationViewModel.cs b/GSS2/ViewModels/AmineContent/BrandCalibrationViewModel.cs index 10438f6..23c37e7 100644 --- a/GSS2/ViewModels/AmineContent/BrandCalibrationViewModel.cs +++ b/GSS2/ViewModels/AmineContent/BrandCalibrationViewModel.cs @@ -36,7 +36,7 @@ public partial class BrandCalibrationViewModel : ViewModelBase /// private readonly ILogger _logger; /// - /// КОнтекст базы данных + /// Контекст базы данных /// private readonly Context _context; /// @@ -55,35 +55,35 @@ public partial class BrandCalibrationViewModel : ViewModelBase /// /// Элементы меню /// - [ObservableProperty] public partial ObservableCollection MenuItems { get; set; } + [ObservableProperty] public partial ObservableCollection MenuItems { get; set; } = new(); /// /// Текущий выбранный элемент меню. Равен -1 если элемент не выбран /// - [ObservableProperty] public partial int MenuSelectedIndex { get; set; } + [ObservableProperty] public partial int MenuSelectedIndex { get; set; } = -1; /// /// выбранного элемента /// - [ObservableProperty] public partial int SelectedId { get; set; } + [ObservableProperty] public partial int SelectedId { get; set; } = 0; /// - /// выбранного элемента + /// выбранного элемента /// - [ObservableProperty] public partial string SelectedUuid { get; set; } + [ObservableProperty] public partial string SelectedUuid { get; set; } = Guid.NewGuid().ToString(); /// - /// выбранного элемента + /// выбранного элемента /// - [ObservableProperty] public partial string SelectedBrandName { get; set; } + [ObservableProperty] public partial string SelectedBrandName { get; set; } = ""; /// - /// выбранного элемента + /// выбранного элемента /// - [ObservableProperty] public partial string SelectedMixtureName { get; set; } + [ObservableProperty] public partial string SelectedMixtureName { get; set; } = ""; /// - /// выбранного элемента + /// выбранного элемента /// - [ObservableProperty] public partial double SelectedMixtureNormalRate { get; set; } + [ObservableProperty] public partial double SelectedMixtureNormalRate { get; set; } = -1; /// /// Можно ли производить перемещение между экранами /// - [ObservableProperty] public partial bool CanScroll { get; set; } + [ObservableProperty] public partial bool CanScroll { get; set; } = true; public BrandCalibrationViewModel( ILogger logger, @@ -99,17 +99,6 @@ public partial class BrandCalibrationViewModel : ViewModelBase _navigation = navigation; _logger.LogInformation("Инициализация"); - // Заполняем свойства пустыми значениями - MenuOpened = new(); - MenuItems = new(); - MenuSelectedIndex = -1; - CanScroll = true; - SelectedId = 0; - SelectedUuid = Guid.NewGuid().ToString(); - SelectedBrandName = ""; - SelectedMixtureName = ""; - SelectedMixtureNormalRate = -1; - // Получаем записи из базы данных MenuItems = new ObservableCollection(_context.BrandRecords.Select(r => new MenuItemViewModel(r.Id, r.BrandName, r.MixtureName))); if (MenuItems.Count() > 0) // Если записи есть, @@ -117,6 +106,13 @@ public partial class BrandCalibrationViewModel : ViewModelBase else // Если записей нет, MenuSelectedIndex = -1; // Устанавливаем, что запись не выбрана + // Подписываемся на изменения свойств для обновления CanScroll + PropertyChanged += (_, ea) => + { + if (ea.PropertyName == nameof(MenuOpened)) + UpdateCanScroll(); + }; + _logger.LogInformation("Инициализировано"); } @@ -168,11 +164,11 @@ public partial class BrandCalibrationViewModel : ViewModelBase } /// - /// Вызывается при изменении + /// Обновить значение /// - partial void OnMenuOpenedChanged(bool value) + private void UpdateCanScroll() { - CanScroll = !value; + CanScroll = !MenuOpened; } @@ -213,6 +209,7 @@ public partial class BrandCalibrationViewModel : ViewModelBase [RelayCommand] private void DeleteRecord() { + // TODO: Добавить определение и отображение количества затрагиваемых, записей которые будут повреждены при удалении этой записи try { _logger.LogTrace("Удаление записи: {}={}, {}={}, {}={}", nameof(BrandRecord.Id), SelectedId, nameof(BrandRecord.BrandName), SelectedBrandName, nameof(BrandRecord.MixtureName), SelectedMixtureName); @@ -269,7 +266,8 @@ public partial class BrandCalibrationViewModel : ViewModelBase _context.SaveChanges(); _logger.LogTrace("Запись удалена"); - confirmViewModel.Closes -= OnConfirmCloses; // Отписываемся от события закрытия экрана подтверждения + // Отписываемся от события закрытия экрана подтверждения + confirmViewModel.Closes -= OnConfirmCloses; } // Создаём View экрана подтверждения @@ -314,7 +312,7 @@ public partial class BrandCalibrationViewModel : ViewModelBase mixtureNormalRate: SelectedMixtureNormalRate ); - // При добавляем запись в базу данных + // Добавляем запись в базу данных var attachedRecord = _context.BrandRecords.Add(newRecord); // Сохраняем изменения в базе данных @@ -347,14 +345,14 @@ public partial class BrandCalibrationViewModel : ViewModelBase if (attachedRecord.MixtureNormalRate != SelectedMixtureNormalRate) attachedRecord.MixtureNormalRate = SelectedMixtureNormalRate; + // Сохраняем изменения в базе данных + _context.SaveChanges(); + _logger.LogTrace("Запись сохранена"); + // Записываем изменения в меню _logger.LogTrace("Записываем изменения в меню"); MenuItems[MenuSelectedIndex].BrandName = SelectedBrandName; MenuItems[MenuSelectedIndex].MixtureName = SelectedMixtureName; - - // Сохраняем изменения в базе данных - _context.SaveChanges(); - _logger.LogTrace("Запись сохранена"); } } catch (Exception ex) diff --git a/GSS2/Views/AmineContent/BrandCalibrationView.axaml b/GSS2/Views/AmineContent/BrandCalibrationView.axaml index 0b2b582..9a846f6 100644 --- a/GSS2/Views/AmineContent/BrandCalibrationView.axaml +++ b/GSS2/Views/AmineContent/BrandCalibrationView.axaml @@ -1,12 +1,12 @@ - @@ -16,25 +16,25 @@ - 5 + + + + + + 5 - 5 - - - - - + 5 - @@ -52,10 +52,10 @@ @@ -71,25 +71,25 @@ 5 - - - - - - - + + + + + + + 5 - + - + - + - + - + - + - + - + - + - + - +