/// <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 AppMenuItems used for a select list /// </summary> /// <param name="request"></param> /// <returns></returns> public AppMenuItemMaintenanceGetAllAppMenuItemsResponse GetAllAppMenuItems( AppMenuItemMaintenanceGetAllAppMenuItemsRequest request) { var appMenuItemsQueryable = _repository.GetAll<AppMenuItem>(); if (request != null && request.AppMenuItemIdExcludeList != null && request.AppMenuItemIdExcludeList.Any()) { appMenuItemsQueryable = appMenuItemsQueryable.Where(p => !request.AppMenuItemIdExcludeList.Contains(p.AppMenuItemId)); } var appMenuItems = appMenuItemsQueryable.OrderBy(p => p.Name).ToList(); return new AppMenuItemMaintenanceGetAllAppMenuItemsResponse() { AppMenuItems = appMenuItems, IsSuccessful = true }; }