XiangTan_JiaoJie_Bak/DM_Weight/ViewModels/SetMenuWindowViewModel.cs

70 lines
2.0 KiB
C#

using DM_Weight.Models;
using DM_Weight.util;
using Prism.Commands;
using Prism.Ioc;
using Prism.Mvvm;
using Prism.Regions;
using Prism.Services.Dialogs;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Channels;
using System.Threading.Tasks;
namespace DM_Weight.ViewModels
{
public class SetMenuWindowViewModel : BindableBase, INavigationAware, IRegionMemberLifetime
{
public bool KeepAlive => false;
private List<BoxMenu> _menuList;
public List<BoxMenu> MenuList { get=>_menuList; set=>SetProperty(ref _menuList,value); }
IDialogService _dialogService;
public SetMenuWindowViewModel(IDialogService dialogService)
{
_dialogService = dialogService;
}
public bool IsNavigationTarget(NavigationContext navigationContext)
{
return true;
}
public void OnNavigatedFrom(NavigationContext navigationContext)
{
}
public void OnNavigatedTo(NavigationContext navigationContext)
{
RequestData();
}
public void RequestData()
{
MenuList?.Clear();
var list = SqlSugarHelper.Db.Queryable<BoxMenu>()
//.Includes(cl => cl.channelStocks, cs => cs.DrugInfo,di=>di.drugBase)
.Includes(cs => cs.DrugInfo).ToList();
if (list != null && list.Count > 0)
{
MenuList = list;
}
else
{
MenuList = null;
}
}
public DelegateCommand BindingAddMenu
{
get => new DelegateCommand(() =>
{
DialogParameters dialogParameters=new DialogParameters();
DialogServiceExtensions.ShowDialogHost(_dialogService, "AddNewMenuDialog", dialogParameters, DoDialogResult, "RootDialog");
});
}
private void DoDialogResult(IDialogResult dialogResult)
{
RequestData();
}
}
}