namespace WIDESEA_WMSServer.Controllers;

[Route("api/Menu")]
[ApiController]
public class Sys_MenuController : ApiBaseController<ISys_MenuService, Sys_Menu>
{
    private readonly IHttpContextAccessor _httpContextAccessor;

    public Sys_MenuController(ISys_MenuService menuService, IHttpContextAccessor httpContextAccessor) : base(menuService)
    {
        _httpContextAccessor = httpContextAccessor;
    }

    [HttpGet, HttpPost, Route("getTreeMenu")]
    public IActionResult GetTreeMenu()
    {
        return Json(Service.GetCurrentMenuActionList());
    }

    [HttpGet, HttpPost, Route("getTreePhoneMenu")]
    public IActionResult GetTreePhoneMenu()
    {
        return Json(Service.GetCurrentMenuPhoneActionList());
    }

    [HttpPost, Route("getMenu")]
    public IActionResult GetMenu()
    {
        return Json(Service.GetMenu());
    }

    [HttpPost, Route("getTreeItem")]
    public async Task<IActionResult> GetTreeItem(int menuId)
    {
        return Json(Service.GetTreeItem(menuId));
    }

    [HttpPost, Route("save")]
    public ActionResult Save([FromBody] Sys_Menu menu)
    {
        if (App.User.IsSuperAdmin)
        {
            return Json(Service.Save(menu));
        }
        else
        {
            return Json(WebResponseContent.Instance.Error("仅限超级管理员修改数据"));
        }
    }
}