/// <summary> /// Populate the drop down lists for editing the record /// </summary> /// <typeparam name="TViewModel"></typeparam> /// <param name="viewModel"></param> protected override void PopulateAdditionalEditViewModelAttributes <TViewModel>(TViewModel viewModel) { var model = viewModel as AppMenuItemMaintenanceEditViewModel; // //Get the list of all app menus // var getAllAppMenusRequest = new AppMenuItemMaintenanceGetAllAppMenusRequest() { }; //Set the list of app menus that the app meny drop down list will be based off of. var getAllAppMenusResponse = _service.GetAllAppMenus(getAllAppMenusRequest); model.AppMenuList = getAllAppMenusResponse.AppMenus; // //Get the list of all app menu items except for the one we are currently editing. // var getAllAppMenuItemsRequest = new AppMenuItemMaintenanceGetAllAppMenuItemsRequest() { AppMenuItemIdExcludeList = new List <int>() }; if (model != null && model.AppMenuItemId != null) { getAllAppMenuItemsRequest.AppMenuItemIdExcludeList.Add(model.AppMenuItemId); } //Set the list of app menu items that the parent menu item drop down list will be based off of. var getAllAppMenuItemsResponse = _service.GetAllAppMenuItems(getAllAppMenuItemsRequest); model.ParentAppMenuItemList = getAllAppMenuItemsResponse.AppMenuItems; }
/// <summary> /// Method to get all AppMenus used for a select list /// </summary> /// <param name="request"></param> /// <returns></returns> public AppMenuItemMaintenanceGetAllAppMenusResponse GetAllAppMenus( AppMenuItemMaintenanceGetAllAppMenusRequest request) { var appMenusQueryable = _repository.GetAll<AppMenu>(); if (request != null && request.AppMenuIdExcludeList != null && request.AppMenuIdExcludeList.Any()) { appMenusQueryable = appMenusQueryable.Where(p => !request.AppMenuIdExcludeList.Contains(p.AppMenuId)); } var appMenus = appMenusQueryable.OrderBy(p => p.Name).ToList(); return new AppMenuItemMaintenanceGetAllAppMenusResponse() { AppMenus = appMenus, IsSuccessful = true }; }