From 4185776306fd6d89b1624497b46a27431ba2c0fa Mon Sep 17 00:00:00 2001 From: maqiao <625215135@qq.com> Date: Fri, 19 Jul 2024 15:45:58 +0800 Subject: [PATCH] =?UTF-8?q?=E6=8A=BD=E5=B1=89=E6=89=93=E5=BC=80=5FportUtil?= =?UTF-8?q?.Operate=E4=B8=BAtrue=E5=88=99=E4=B8=8D=E8=83=BD=E6=93=8D?= =?UTF-8?q?=E4=BD=9C=E8=8F=9C=E5=8D=95=E5=8F=8A=E9=80=80=E5=87=BA=E6=8C=89?= =?UTF-8?q?=E9=92=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- DM_Weight/ViewModels/HomeWindowViewModel.cs | 46 +++++++++++++++++---- DM_Weight/Views/HomeWindow.xaml | 4 +- 2 files changed, 42 insertions(+), 8 deletions(-) diff --git a/DM_Weight/ViewModels/HomeWindowViewModel.cs b/DM_Weight/ViewModels/HomeWindowViewModel.cs index efd9efd..394e605 100644 --- a/DM_Weight/ViewModels/HomeWindowViewModel.cs +++ b/DM_Weight/ViewModels/HomeWindowViewModel.cs @@ -24,6 +24,8 @@ using Newtonsoft.Json.Linq; using DM_Weight.msg; using DM_Weight.HIKVISION; using System.Threading; +using MaterialDesignThemes.Wpf; +using System.Windows.Media; namespace DM_Weight.ViewModels { @@ -54,6 +56,20 @@ namespace DM_Weight.ViewModels { get => loginMode == 2; } + private SolidColorBrush _colorBrush; + + public SolidColorBrush SnackbarBackground + { + get => _colorBrush; + set => SetProperty(ref _colorBrush, value); + } + private ISnackbarMessageQueue _snackbarMessageQueue = new SnackbarMessageQueue(TimeSpan.FromSeconds(3)); + + public ISnackbarMessageQueue SnackbarMessageQueue + { + get => _snackbarMessageQueue; + set => SetProperty(ref _snackbarMessageQueue, value); + } private PremissionDm? _selectedMenu; @@ -169,7 +185,14 @@ namespace DM_Weight.ViewModels // SelectedChildMenu = value.Children[0]; // } //} - SetProperty(ref _selectedMenu, value); + if (!_portUtil.Operate) + SetProperty(ref _selectedMenu, value); + else + { + logger.Info($"未关闭抽屉切换菜单"); + SnackbarBackground = new SolidColorBrush((Color)ColorConverter.ConvertFromString("#b71c1c")); + SnackbarMessageQueue.Enqueue("请关闭抽屉后再切换菜单"); + } } } @@ -183,12 +206,21 @@ namespace DM_Weight.ViewModels SelectedMenu = viewName.SelectedItem as PremissionDm; if (SelectedMenu.PremissionName == "退出") { - - _chkFunction.HIKStopDVRRecord(); - logger.Info($"用户【{Operator?.Nickname}】退出登录"); - Operator = null; - Reviewer = null; - _regionManager.RequestNavigate("MainRegion", "LoginWindow"); + if (!_portUtil.Operate) + { + _chkFunction.HIKStopDVRRecord(); + logger.Info($"用户【{Operator?.Nickname}】退出登录"); + Operator = null; + Reviewer = null; + _regionManager.RequestNavigate("MainRegion", "LoginWindow"); + } + else + { + logger.Info($"未关闭抽屉操作退出"); + SnackbarBackground = new SolidColorBrush((Color)ColorConverter.ConvertFromString("#b71c1c")); + SnackbarMessageQueue.Enqueue("请关闭抽屉后再退出"); + return; + } } else { diff --git a/DM_Weight/Views/HomeWindow.xaml b/DM_Weight/Views/HomeWindow.xaml index c7d93ec..9dd3b52 100644 --- a/DM_Weight/Views/HomeWindow.xaml +++ b/DM_Weight/Views/HomeWindow.xaml @@ -124,7 +124,9 @@ - +