|
|
|
@ -32,13 +32,13 @@ namespace Volo.CmsKit.Admin.Menus |
|
|
|
PageRepository = pageRepository; |
|
|
|
} |
|
|
|
|
|
|
|
public async Task<PagedResultDto<MenuDto>> GetListAsync(PagedAndSortedResultRequestDto input) |
|
|
|
public async Task<PagedResultDto<MenuWithDetailsDto>> GetListAsync(PagedAndSortedResultRequestDto input) |
|
|
|
{ |
|
|
|
var menus = await MenuRepository.GetPagedListAsync(input.SkipCount, input.MaxResultCount, input.Sorting); |
|
|
|
|
|
|
|
return new PagedResultDto<MenuDto>( |
|
|
|
return new PagedResultDto<MenuWithDetailsDto>( |
|
|
|
await MenuRepository.GetCountAsync(), |
|
|
|
ObjectMapper.Map<List<Menu>, List<MenuDto>>(menus) |
|
|
|
ObjectMapper.Map<List<Menu>, List<MenuWithDetailsDto>>(menus) |
|
|
|
); |
|
|
|
} |
|
|
|
|
|
|
|
@ -48,24 +48,24 @@ namespace Volo.CmsKit.Admin.Menus |
|
|
|
return ObjectMapper.Map<Menu, MenuWithDetailsDto>(menu); |
|
|
|
} |
|
|
|
|
|
|
|
public async Task<MenuDto> GetSimpleAsync(Guid id) |
|
|
|
public async Task<MenuWithDetailsDto> GetSimpleAsync(Guid id) |
|
|
|
{ |
|
|
|
var menu = await MenuRepository.GetAsync(id, includeDetails: false); |
|
|
|
return ObjectMapper.Map<Menu, MenuDto>(menu); |
|
|
|
return ObjectMapper.Map<Menu, MenuWithDetailsDto>(menu); |
|
|
|
} |
|
|
|
|
|
|
|
[Authorize(CmsKitAdminPermissions.Menus.Create)] |
|
|
|
public async Task<MenuDto> CreateAsync(MenuCreateInput input) |
|
|
|
public async Task<MenuWithDetailsDto> CreateAsync(MenuCreateInput input) |
|
|
|
{ |
|
|
|
var menu = new Menu(GuidGenerator.Create(), CurrentTenant.Id, input.Name); |
|
|
|
var menu = await MenuManager.CreateAsync(CurrentTenant.Id, input.Name); |
|
|
|
|
|
|
|
await MenuRepository.InsertAsync(menu); |
|
|
|
|
|
|
|
return ObjectMapper.Map<Menu, MenuDto>(menu); |
|
|
|
return ObjectMapper.Map<Menu, MenuWithDetailsDto>(menu); |
|
|
|
} |
|
|
|
|
|
|
|
[Authorize(CmsKitAdminPermissions.Menus.Update)] |
|
|
|
public async Task<MenuDto> UpdateAsync(Guid menuId, MenuUpdateInput input) |
|
|
|
public async Task<MenuWithDetailsDto> UpdateAsync(Guid menuId, MenuUpdateInput input) |
|
|
|
{ |
|
|
|
var menu = await MenuRepository.GetAsync(menuId); |
|
|
|
|
|
|
|
@ -73,7 +73,7 @@ namespace Volo.CmsKit.Admin.Menus |
|
|
|
|
|
|
|
await MenuRepository.UpdateAsync(menu); |
|
|
|
|
|
|
|
return ObjectMapper.Map<Menu, MenuDto>(menu); |
|
|
|
return ObjectMapper.Map<Menu, MenuWithDetailsDto>(menu); |
|
|
|
} |
|
|
|
|
|
|
|
[Authorize(CmsKitAdminPermissions.Menus.Delete)] |
|
|
|
@ -92,7 +92,7 @@ namespace Volo.CmsKit.Admin.Menus |
|
|
|
return ObjectMapper.Map<MenuItem, MenuItemDto>(menuItem); |
|
|
|
} |
|
|
|
|
|
|
|
[Authorize(CmsKitAdminPermissions.Menus.MenuItems.Create)] |
|
|
|
[Authorize(CmsKitAdminPermissions.Menus.Update)] |
|
|
|
public virtual async Task<MenuItemDto> CreateMenuItemAsync(Guid menuId, MenuItemCreateInput input) |
|
|
|
{ |
|
|
|
var menu = await MenuRepository.GetAsync(menuId, includeDetails: true); |
|
|
|
@ -109,8 +109,7 @@ namespace Volo.CmsKit.Admin.Menus |
|
|
|
input.Order, |
|
|
|
input.Target, |
|
|
|
input.ElementId, |
|
|
|
input.CssClass, |
|
|
|
input.RequiredPermissionName); |
|
|
|
input.CssClass); |
|
|
|
|
|
|
|
if (input.PageId.HasValue) |
|
|
|
{ |
|
|
|
@ -127,7 +126,7 @@ namespace Volo.CmsKit.Admin.Menus |
|
|
|
return ObjectMapper.Map<MenuItem, MenuItemDto>(menuItem); |
|
|
|
} |
|
|
|
|
|
|
|
[Authorize(CmsKitAdminPermissions.Menus.MenuItems.Update)] |
|
|
|
[Authorize(CmsKitAdminPermissions.Menus.Update)] |
|
|
|
public virtual async Task<MenuItemDto> UpdateMenuItemAsync(Guid menuId, Guid menuItemId, |
|
|
|
MenuItemUpdateInput input) |
|
|
|
{ |
|
|
|
@ -151,14 +150,13 @@ namespace Volo.CmsKit.Admin.Menus |
|
|
|
menuItem.Target = input.Target; |
|
|
|
menuItem.ElementId = input.ElementId; |
|
|
|
menuItem.CssClass = input.CssClass; |
|
|
|
menuItem.RequiredPermissionName = input.RequiredPermissionName; |
|
|
|
|
|
|
|
await MenuRepository.UpdateAsync(menu); |
|
|
|
|
|
|
|
return ObjectMapper.Map<MenuItem, MenuItemDto>(menuItem); |
|
|
|
} |
|
|
|
|
|
|
|
[Authorize(CmsKitAdminPermissions.Menus.MenuItems.Delete)] |
|
|
|
[Authorize(CmsKitAdminPermissions.Menus.Update)] |
|
|
|
public virtual async Task DeleteMenuItemAsync(Guid menuId, Guid menuItemId) |
|
|
|
{ |
|
|
|
var menu = await MenuRepository.GetAsync(menuId, includeDetails: true); |
|
|
|
@ -171,7 +169,7 @@ namespace Volo.CmsKit.Admin.Menus |
|
|
|
await MenuRepository.UpdateAsync(menu); |
|
|
|
} |
|
|
|
|
|
|
|
[Authorize(CmsKitAdminPermissions.Menus.MenuItems.Update)] |
|
|
|
[Authorize(CmsKitAdminPermissions.Menus.Update)] |
|
|
|
public virtual Task MoveMenuItemAsync(Guid menuId, Guid menuItemId, MenuItemMoveInput input) |
|
|
|
{ |
|
|
|
return MenuManager.MoveAsync(menuId, menuItemId, input.NewParentId, input.Position); |
|
|
|
|