using Microsoft.AspNetCore.Mvc; using System.Threading.Tasks; using WIDESEA_Core.Enums; using WIDESEA_Core.Filters; using WIDESEA_Core.Utilities; using WIDESEA_Entity.DomainModels; namespace WIDESEA_Services.Controllers { public partial class Sys_MenuController { /// /// /// /// [HttpGet, HttpPost, Route("getTreeMenu")] //2019.10.24屏蔽用户查询自己权限菜单 // [ApiActionPermission("Sys_Menu", ActionPermissionOptions.Search)] public async Task GetTreeMenu() { return Json(await _service.GetCurrentMenuActionList()); } [HttpPost, Route("getMenu")] [ApiActionPermission("Sys_Menu", ActionPermissionOptions.Search)] public async Task GetMenu() { return Json(await _service.GetMenu()); } [HttpPost, Route("getTreeItem")] [ApiActionPermission("Sys_Menu", "1", ActionPermissionOptions.Search)] public async Task GetTreeItem(int menuId) { return Json(await _service.GetTreeItem(menuId)); } //[ActionPermission("Sys_Menu", "1", ActionPermissionOptions.Add)] //只有角色ID为1的才能进行保存操作 [HttpPost, Route("save"), ApiActionPermission(ActionRolePermission.SuperAdmin)] public async Task Save([FromBody] Sys_Menu menu) { return Json(await _service.Save(menu)); } /// /// 限制只能超级管理员才删除菜单 /// /// /// [ApiActionPermission(ActionRolePermission.SuperAdmin)] [HttpPost, Route("delMenu")] public async Task DelMenu(int menuId) { WebResponseContent webResponse = new WebResponseContent(); var repository = Repositories.Sys_MenuRepository.Instance; if (await repository.ExistsAsync(x => x.ParentId == menuId)) { return Json(webResponse.Error("当前菜单存在子菜单,请先删除子菜单!")); } repository.Delete(new Sys_Menu() { Menu_Id = menuId }, true); return Json(webResponse.OK("删除成功")); } } }