|
|
|
@ -32,48 +32,10 @@ namespace Volo.CmsKit.Admin.Menus |
|
|
|
PageRepository = pageRepository; |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
[Authorize(CmsKitAdminPermissions.Menus.Create)] |
|
|
|
public async Task<MenuDto> CreateAsync(MenuCreateInput input) |
|
|
|
{ |
|
|
|
var menu = ObjectMapper.Map<MenuCreateInput, Menu>(input); |
|
|
|
|
|
|
|
foreach (var item in input.Items) |
|
|
|
{ |
|
|
|
menu.Items.Add(await MapToMenuItemAsync(item)); |
|
|
|
} |
|
|
|
|
|
|
|
await MenuRepository.InsertAsync(menu); |
|
|
|
|
|
|
|
return ObjectMapper.Map<Menu, MenuDto>(menu); |
|
|
|
} |
|
|
|
|
|
|
|
private async Task<MenuItem> MapToMenuItemAsync(MenuItemCreateInput dto) |
|
|
|
public Task<MenuDto> CreateAsync(MenuCreateInput input) |
|
|
|
{ |
|
|
|
var menuItem = new MenuItem( |
|
|
|
GuidGenerator.Create(), |
|
|
|
dto.MenuId, |
|
|
|
dto.DisplayName, |
|
|
|
dto.Url, |
|
|
|
dto.IsActive, |
|
|
|
dto.ParentMenuId) |
|
|
|
|
|
|
|
menuItem.SetDisplayName(dto.DisplayName); |
|
|
|
menuItem.SetUrl(dto.Url); |
|
|
|
|
|
|
|
if (dto.PageId.HasValue) |
|
|
|
{ |
|
|
|
var page = await PageRepository.GetAsync(dto.PageId.Value, includeDetails: false); |
|
|
|
|
|
|
|
MenuManager.SetPageUrl(menuItem, page); |
|
|
|
} |
|
|
|
|
|
|
|
foreach (var item in dto.MenuItems) |
|
|
|
{ |
|
|
|
menuItem.MenuItems.Add(await MapToMenuItemAsync(item)); |
|
|
|
} |
|
|
|
|
|
|
|
return menuItem; |
|
|
|
throw new NotImplementedException(); |
|
|
|
} |
|
|
|
|
|
|
|
[Authorize(CmsKitAdminPermissions.Menus.Delete)] |
|
|
|
|