优化菜单
This commit is contained in:
parent
9e07f293a0
commit
10c3fc4b6e
|
@ -66,87 +66,87 @@ namespace DM_Weight.ViewModels
|
||||||
get { return _selectedChildMenu; }
|
get { return _selectedChildMenu; }
|
||||||
set
|
set
|
||||||
{
|
{
|
||||||
if (!_portUtil.Operate)
|
//if (!_portUtil.Operate)
|
||||||
{
|
//{
|
||||||
if (value != null)
|
// if (value != null)
|
||||||
{
|
// {
|
||||||
if (value.PremissionPath.Equals("TakeRecordWindow"))
|
// if (value.PremissionPath.Equals("TakeRecordWindow"))
|
||||||
{
|
// {
|
||||||
//定义传参变量
|
// //定义传参变量
|
||||||
NavigationParameters keys = new NavigationParameters();
|
// NavigationParameters keys = new NavigationParameters();
|
||||||
|
|
||||||
//添加参数,键值对格式
|
// //添加参数,键值对格式
|
||||||
keys.Add("Type", 2);
|
// keys.Add("Type", 2);
|
||||||
_regionManager.RequestNavigate("ContentRegion", "MachineRecordWindow", keys);
|
// _regionManager.RequestNavigate("ContentRegion", "MachineRecordWindow", keys);
|
||||||
}
|
// }
|
||||||
else if (value.PremissionPath.Equals("AddRecordWindow"))
|
// else if (value.PremissionPath.Equals("AddRecordWindow"))
|
||||||
{
|
// {
|
||||||
//定义传参变量
|
// //定义传参变量
|
||||||
NavigationParameters keys = new NavigationParameters();
|
// NavigationParameters keys = new NavigationParameters();
|
||||||
|
|
||||||
//添加参数,键值对格式
|
// //添加参数,键值对格式
|
||||||
keys.Add("Type", 1);
|
// keys.Add("Type", 1);
|
||||||
_regionManager.RequestNavigate("ContentRegion", "MachineRecordWindow", keys);
|
// _regionManager.RequestNavigate("ContentRegion", "MachineRecordWindow", keys);
|
||||||
}
|
// }
|
||||||
else if (value.PremissionPath.Equals("ReturnRecordWindow"))
|
// else if (value.PremissionPath.Equals("ReturnRecordWindow"))
|
||||||
{
|
// {
|
||||||
//定义传参变量
|
// //定义传参变量
|
||||||
NavigationParameters keys = new NavigationParameters();
|
// NavigationParameters keys = new NavigationParameters();
|
||||||
|
|
||||||
//添加参数,键值对格式
|
// //添加参数,键值对格式
|
||||||
keys.Add("Type", 3);
|
// keys.Add("Type", 3);
|
||||||
_regionManager.RequestNavigate("ContentRegion", "MachineRecordWindow", keys);
|
// _regionManager.RequestNavigate("ContentRegion", "MachineRecordWindow", keys);
|
||||||
}
|
// }
|
||||||
else if (value.PremissionPath.Equals("RetrunEmptyRecordWindow"))
|
// else if (value.PremissionPath.Equals("RetrunEmptyRecordWindow"))
|
||||||
{
|
// {
|
||||||
//定义传参变量
|
// //定义传参变量
|
||||||
NavigationParameters keys = new NavigationParameters();
|
// NavigationParameters keys = new NavigationParameters();
|
||||||
|
|
||||||
//添加参数,键值对格式
|
// //添加参数,键值对格式
|
||||||
keys.Add("Type", 3);
|
// keys.Add("Type", 3);
|
||||||
_regionManager.RequestNavigate("ContentRegion", value.PremissionPath, keys);
|
// _regionManager.RequestNavigate("ContentRegion", value.PremissionPath, keys);
|
||||||
}
|
// }
|
||||||
else if (value.PremissionPath.Equals("CheckRecordWindow"))
|
// else if (value.PremissionPath.Equals("CheckRecordWindow"))
|
||||||
{
|
// {
|
||||||
//定义传参变量
|
// //定义传参变量
|
||||||
NavigationParameters keys = new NavigationParameters();
|
// NavigationParameters keys = new NavigationParameters();
|
||||||
|
|
||||||
//添加参数,键值对格式
|
// //添加参数,键值对格式
|
||||||
keys.Add("Type", 4);
|
// keys.Add("Type", 4);
|
||||||
_regionManager.RequestNavigate("ContentRegion", "MachineRecordWindow", keys);
|
// _regionManager.RequestNavigate("ContentRegion", "MachineRecordWindow", keys);
|
||||||
}
|
// }
|
||||||
else
|
// else
|
||||||
{
|
// {
|
||||||
if (value.PremissionPath.Equals("ReturnDrugWindow") || value.PremissionPath.Equals("ReturnDrugWindow2"))
|
// if (value.PremissionPath.Equals("ReturnDrugWindow") || value.PremissionPath.Equals("ReturnDrugWindow2"))
|
||||||
{
|
// {
|
||||||
if (ConfigurationManager.AppSettings["returnDrugMode"].ToString().Equals("1"))
|
// if (ConfigurationManager.AppSettings["returnDrugMode"].ToString().Equals("1"))
|
||||||
{
|
// {
|
||||||
_regionManager.RequestNavigate("ContentRegion", "ReturnDrugWindow2");
|
// _regionManager.RequestNavigate("ContentRegion", "ReturnDrugWindow2");
|
||||||
}
|
// }
|
||||||
else
|
// else
|
||||||
{
|
// {
|
||||||
_regionManager.RequestNavigate("ContentRegion", "ReturnDrugWindow");
|
// _regionManager.RequestNavigate("ContentRegion", "ReturnDrugWindow");
|
||||||
}
|
// }
|
||||||
}
|
// }
|
||||||
else if (value.PremissionPath.Equals("SettingMainWindow") || value.PremissionPath.Equals("SettingWindow"))
|
// else if (value.PremissionPath.Equals("SettingMainWindow") || value.PremissionPath.Equals("SettingWindow"))
|
||||||
{
|
// {
|
||||||
//if (Convert.ToInt32(ConfigurationManager.AppSettings["hasFridge"])>0)
|
// //if (Convert.ToInt32(ConfigurationManager.AppSettings["hasFridge"])>0)
|
||||||
//{
|
// //{
|
||||||
// _regionManager.RequestNavigate("ContentRegion", "SettingMainWindow");
|
// // _regionManager.RequestNavigate("ContentRegion", "SettingMainWindow");
|
||||||
//}
|
// //}
|
||||||
//else
|
// //else
|
||||||
{
|
// {
|
||||||
_regionManager.RequestNavigate("ContentRegion", "SettingWindow");
|
// _regionManager.RequestNavigate("ContentRegion", "SettingWindow");
|
||||||
}
|
// }
|
||||||
}
|
// }
|
||||||
else
|
// else
|
||||||
{
|
// {
|
||||||
_regionManager.RequestNavigate("ContentRegion", value.PremissionPath);
|
// _regionManager.RequestNavigate("ContentRegion", value.PremissionPath);
|
||||||
}
|
// }
|
||||||
}
|
// }
|
||||||
}
|
// }
|
||||||
SetProperty(ref _selectedChildMenu, value);
|
SetProperty(ref _selectedChildMenu, value);
|
||||||
}
|
//}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -172,31 +172,146 @@ namespace DM_Weight.ViewModels
|
||||||
SetProperty(ref _selectedMenu, value);
|
SetProperty(ref _selectedMenu, value);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
#region 父菜单点击事件
|
||||||
|
|
||||||
private DelegateCommand<ListBox> _selectionCommon;
|
#endregion
|
||||||
public DelegateCommand<ListBox> SelectionCommon
|
private DelegateCommand _selectionCommon;
|
||||||
|
public DelegateCommand SelectionCommon
|
||||||
{
|
{
|
||||||
get => _selectionCommon ?? (_selectionCommon = new DelegateCommand<ListBox>(SelectionMethod));
|
get => _selectionCommon ?? (_selectionCommon = new DelegateCommand(SelectionMethod));
|
||||||
}
|
}
|
||||||
private void SelectionMethod(ListBox viewName)
|
private void SelectionMethod()
|
||||||
{
|
{
|
||||||
SelectedMenu = viewName.SelectedItem as PremissionDm;
|
//SelectedMenu = viewName.SelectedItem as PremissionDm;
|
||||||
if (SelectedMenu.PremissionName == "退出")
|
//if (SelectedMenu.PremissionName == "退出")
|
||||||
{
|
//{
|
||||||
|
|
||||||
_chkFunction.HIKStopDVRRecord();
|
// _chkFunction.HIKStopDVRRecord();
|
||||||
|
// logger.Info($"用户【{Operator?.Nickname}】退出登录");
|
||||||
|
// Operator = null;
|
||||||
|
// Reviewer = null;
|
||||||
|
// _regionManager.RequestNavigate("MainRegion", "LoginWindow");
|
||||||
|
//}
|
||||||
|
//else
|
||||||
|
//{
|
||||||
|
// //SelectedMenu.Children = SelectedMenu.Children;
|
||||||
|
// SelectedChildMenu = SelectedMenu.Children[0];
|
||||||
|
//}
|
||||||
|
logger.Info("开始进入父菜单");
|
||||||
|
if (SelectedMenu != null && SelectedMenu.PremissionName == "退出")
|
||||||
|
{
|
||||||
logger.Info($"用户【{Operator?.Nickname}】退出登录");
|
logger.Info($"用户【{Operator?.Nickname}】退出登录");
|
||||||
Operator = null;
|
Operator = null;
|
||||||
Reviewer = null;
|
Reviewer = null;
|
||||||
_regionManager.RequestNavigate("MainRegion", "LoginWindow");
|
_regionManager.RequestNavigate("MainRegion", "BeforeLogin");
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
//SelectedMenu.Children = SelectedMenu.Children;
|
if (!_portUtil.Operate)
|
||||||
SelectedChildMenu = SelectedMenu.Children[0];
|
{
|
||||||
|
_regionManager.RequestNavigate("ContentRegion", SelectedMenu.Children[0].PremissionPath);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
logger.Info("结束父菜单");
|
||||||
|
}
|
||||||
|
|
||||||
|
#region
|
||||||
|
private DelegateCommand _selectionChildCommon;
|
||||||
|
public DelegateCommand SelectionChildCommon
|
||||||
|
{
|
||||||
|
get => _selectionChildCommon ?? (_selectionChildCommon = new DelegateCommand(SelectionChildMethod));
|
||||||
|
}
|
||||||
|
private void SelectionChildMethod()
|
||||||
|
{
|
||||||
|
SelectChildNavigate(SelectedChildMenu);
|
||||||
|
}
|
||||||
|
private void SelectChildNavigate(PremissionDm SelectedChildMenu)
|
||||||
|
{
|
||||||
|
if (!_portUtil.Operate)
|
||||||
|
{
|
||||||
|
if (SelectedChildMenu != null)
|
||||||
|
{
|
||||||
|
if (SelectedChildMenu.PremissionPath.Equals("TakeRecordWindow"))
|
||||||
|
{
|
||||||
|
//定义传参变量
|
||||||
|
NavigationParameters keys = new NavigationParameters();
|
||||||
|
|
||||||
|
//添加参数,键值对格式
|
||||||
|
keys.Add("Type", 2);
|
||||||
|
_regionManager.RequestNavigate("ContentRegion", "MachineRecordWindow", keys);
|
||||||
|
}
|
||||||
|
else if (SelectedChildMenu.PremissionPath.Equals("AddRecordWindow"))
|
||||||
|
{
|
||||||
|
//定义传参变量
|
||||||
|
NavigationParameters keys = new NavigationParameters();
|
||||||
|
|
||||||
|
//添加参数,键值对格式
|
||||||
|
keys.Add("Type", 1);
|
||||||
|
_regionManager.RequestNavigate("ContentRegion", "MachineRecordWindow", keys);
|
||||||
|
}
|
||||||
|
else if (SelectedChildMenu.PremissionPath.Equals("ReturnRecordWindow"))
|
||||||
|
{
|
||||||
|
//定义传参变量
|
||||||
|
NavigationParameters keys = new NavigationParameters();
|
||||||
|
|
||||||
|
//添加参数,键值对格式
|
||||||
|
keys.Add("Type", 3);
|
||||||
|
_regionManager.RequestNavigate("ContentRegion", "MachineRecordWindow", keys);
|
||||||
|
}
|
||||||
|
else if (SelectedChildMenu.PremissionPath.Equals("RetrunEmptyRecordWindow"))
|
||||||
|
{
|
||||||
|
//定义传参变量
|
||||||
|
NavigationParameters keys = new NavigationParameters();
|
||||||
|
|
||||||
|
//添加参数,键值对格式
|
||||||
|
keys.Add("Type", 3);
|
||||||
|
_regionManager.RequestNavigate("ContentRegion", SelectedChildMenu.PremissionPath, keys);
|
||||||
|
}
|
||||||
|
else if (SelectedChildMenu.PremissionPath.Equals("CheckRecordWindow"))
|
||||||
|
{
|
||||||
|
//定义传参变量
|
||||||
|
NavigationParameters keys = new NavigationParameters();
|
||||||
|
|
||||||
|
//添加参数,键值对格式
|
||||||
|
keys.Add("Type", 4);
|
||||||
|
_regionManager.RequestNavigate("ContentRegion", "MachineRecordWindow", keys);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
if (SelectedChildMenu.PremissionPath.Equals("ReturnDrugWindow") || SelectedChildMenu.PremissionPath.Equals("ReturnDrugWindow2"))
|
||||||
|
{
|
||||||
|
if (ConfigurationManager.AppSettings["returnDrugMode"].ToString().Equals("1"))
|
||||||
|
{
|
||||||
|
_regionManager.RequestNavigate("ContentRegion", "ReturnDrugWindow2");
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
_regionManager.RequestNavigate("ContentRegion", "ReturnDrugWindow");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else if (SelectedChildMenu.PremissionPath.Equals("SettingMainWindow") || SelectedChildMenu.PremissionPath.Equals("SettingWindow"))
|
||||||
|
{
|
||||||
|
//if (Convert.ToInt32(ConfigurationManager.AppSettings["hasFridge"])>0)
|
||||||
|
//{
|
||||||
|
// _regionManager.RequestNavigate("ContentRegion", "SettingMainWindow");
|
||||||
|
//}
|
||||||
|
//else
|
||||||
|
{
|
||||||
|
_regionManager.RequestNavigate("ContentRegion", "SettingWindow");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
_regionManager.RequestNavigate("ContentRegion", SelectedChildMenu.PremissionPath);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#endregion
|
||||||
|
|
||||||
|
|
||||||
public List<PremissionDm> PremissionDmList { get { return _premissionDmList; } set { SetProperty(ref _premissionDmList, value); } }
|
public List<PremissionDm> PremissionDmList { get { return _premissionDmList; } set { SetProperty(ref _premissionDmList, value); } }
|
||||||
|
|
||||||
public UserList UserList { get { return _userList; } set { SetProperty(ref _userList, value); } }
|
public UserList UserList { get { return _userList; } set { SetProperty(ref _userList, value); } }
|
||||||
|
@ -406,6 +521,7 @@ namespace DM_Weight.ViewModels
|
||||||
PremissionDmList = premissions;
|
PremissionDmList = premissions;
|
||||||
SelectedMenu = premissions[0];
|
SelectedMenu = premissions[0];
|
||||||
SelectedChildMenu = premissions[0].Children[0];
|
SelectedChildMenu = premissions[0].Children[0];
|
||||||
|
_regionManager.RequestNavigate("ContentRegion", premissions[0].Children[0].PremissionPath);
|
||||||
FindDrawerCount();
|
FindDrawerCount();
|
||||||
|
|
||||||
int autoExit = Convert.ToInt32(ConfigurationManager.AppSettings["autoExit"] ?? "0");
|
int autoExit = Convert.ToInt32(ConfigurationManager.AppSettings["autoExit"] ?? "0");
|
||||||
|
|
|
@ -26,10 +26,11 @@
|
||||||
<ColumnDefinition />
|
<ColumnDefinition />
|
||||||
</Grid.ColumnDefinitions>
|
</Grid.ColumnDefinitions>
|
||||||
<Image Grid.Column="0" Margin="30 0 30 0" HorizontalAlignment="Left" Width="Auto" Height="26" Source="/Images/logo.png" />
|
<Image Grid.Column="0" Margin="30 0 30 0" HorizontalAlignment="Left" Width="Auto" Height="26" Source="/Images/logo.png" />
|
||||||
<ListBox Name="ListBoxName" Grid.Column="1" ItemsSource="{Binding PremissionDmList}" HorizontalAlignment="Right" Cursor="Hand">
|
<ListBox Name="ListBoxName" Grid.Column="1" SelectedItem="{Binding SelectedMenu}" ItemsSource="{Binding PremissionDmList}" HorizontalAlignment="Right" Cursor="Hand">
|
||||||
<i:Interaction.Triggers>
|
<i:Interaction.Triggers>
|
||||||
<i:EventTrigger EventName="SelectionChanged">
|
<i:EventTrigger EventName="SelectionChanged">
|
||||||
<i:InvokeCommandAction Command="{Binding SelectionCommon}" CommandParameter="{Binding ElementName=ListBoxName}"/>
|
<!--<i:InvokeCommandAction Command="{Binding SelectionCommon}" CommandParameter="{Binding ElementName=ListBoxName}"/>-->
|
||||||
|
<i:InvokeCommandAction Command="{Binding SelectionCommon}"/>
|
||||||
</i:EventTrigger>
|
</i:EventTrigger>
|
||||||
</i:Interaction.Triggers>
|
</i:Interaction.Triggers>
|
||||||
<ListBox.ItemsPanel>
|
<ListBox.ItemsPanel>
|
||||||
|
@ -55,7 +56,11 @@
|
||||||
<materialDesign:Card Grid.Row="0">
|
<materialDesign:Card Grid.Row="0">
|
||||||
|
|
||||||
<ListBox ItemsSource="{Binding SelectedMenu.Children}" SelectedItem="{ Binding SelectedChildMenu }" HorizontalAlignment="left" Cursor="Hand">
|
<ListBox ItemsSource="{Binding SelectedMenu.Children}" SelectedItem="{ Binding SelectedChildMenu }" HorizontalAlignment="left" Cursor="Hand">
|
||||||
|
<i:Interaction.Triggers>
|
||||||
|
<i:EventTrigger EventName="SelectionChanged">
|
||||||
|
<i:InvokeCommandAction Command="{Binding SelectionChildCommon}"/>
|
||||||
|
</i:EventTrigger>
|
||||||
|
</i:Interaction.Triggers>
|
||||||
<ListBox.ItemsPanel>
|
<ListBox.ItemsPanel>
|
||||||
<ItemsPanelTemplate>
|
<ItemsPanelTemplate>
|
||||||
<WrapPanel Orientation="Horizontal" IsItemsHost="True"/>
|
<WrapPanel Orientation="Horizontal" IsItemsHost="True"/>
|
||||||
|
|
Loading…
Reference in New Issue