mirror of https://github.com/abpframework/abp.git
csharpabpc-sharpframeworkblazoraspnet-coredotnet-coreaspnetcorearchitecturesaasdomain-driven-designangularmulti-tenancy
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
79 lines
2.5 KiB
79 lines
2.5 KiB
using Microsoft.AspNetCore.Authorization;
|
|
using Microsoft.AspNetCore.Mvc;
|
|
using System;
|
|
using System.Threading.Tasks;
|
|
using Volo.Abp;
|
|
using Volo.Abp.Application.Dtos;
|
|
using Volo.Abp.GlobalFeatures;
|
|
using Volo.CmsKit.GlobalFeatures;
|
|
using Volo.CmsKit.Menus;
|
|
using Volo.CmsKit.Permissions;
|
|
|
|
namespace Volo.CmsKit.Admin.Menus
|
|
{
|
|
[RequiresGlobalFeature(typeof(MenuFeature))]
|
|
[RemoteService(Name = CmsKitAdminRemoteServiceConsts.RemoteServiceName)]
|
|
[Area("cms-kit-admin")]
|
|
[Authorize(CmsKitAdminPermissions.Menus.Default)]
|
|
[Route("api/cms-kit-admin/menu-items")]
|
|
public class MenuItemAdminController : CmsKitAdminController, IMenuItemAdminAppService
|
|
{
|
|
protected IMenuItemAdminAppService MenuItemAdminAppService { get; }
|
|
|
|
public MenuItemAdminController(IMenuItemAdminAppService menuAdminAppService)
|
|
{
|
|
MenuItemAdminAppService = menuAdminAppService;
|
|
}
|
|
|
|
[HttpGet]
|
|
public virtual Task<ListResultDto<MenuItemDto>> GetListAsync()
|
|
{
|
|
return MenuItemAdminAppService.GetListAsync();
|
|
}
|
|
|
|
[HttpGet]
|
|
[Route("{id}")]
|
|
public virtual Task<MenuItemDto> GetAsync(Guid id)
|
|
{
|
|
return MenuItemAdminAppService.GetAsync(id);
|
|
}
|
|
|
|
[HttpPost]
|
|
[Authorize(CmsKitAdminPermissions.Menus.Create)]
|
|
public virtual Task<MenuItemDto> CreateAsync(MenuItemCreateInput input)
|
|
{
|
|
return MenuItemAdminAppService.CreateAsync(input);
|
|
}
|
|
|
|
[HttpPut]
|
|
[Route("{id}")]
|
|
[Authorize(CmsKitAdminPermissions.Menus.Update)]
|
|
public virtual Task<MenuItemDto> UpdateAsync(Guid id, MenuItemUpdateInput input)
|
|
{
|
|
return MenuItemAdminAppService.UpdateAsync(id, input);
|
|
}
|
|
|
|
[HttpDelete]
|
|
[Route("{id}")]
|
|
[Authorize(CmsKitAdminPermissions.Menus.Delete)]
|
|
public virtual Task DeleteAsync(Guid id)
|
|
{
|
|
return MenuItemAdminAppService.DeleteAsync(id);
|
|
}
|
|
|
|
[HttpPut]
|
|
[Route("{id}/move")]
|
|
[Authorize(CmsKitAdminPermissions.Menus.Update)]
|
|
public virtual Task MoveMenuItemAsync(Guid id, MenuItemMoveInput input)
|
|
{
|
|
return MenuItemAdminAppService.MoveMenuItemAsync(id, input);
|
|
}
|
|
|
|
[HttpGet]
|
|
[Route("lookup/pages")]
|
|
public virtual Task<PagedResultDto<PageLookupDto>> GetPageLookupAsync(PageLookupInputDto input)
|
|
{
|
|
return MenuItemAdminAppService.GetPageLookupAsync(input);
|
|
}
|
|
}
|
|
}
|
|
|