using Microsoft.AspNetCore.Mvc; namespace Diligent.WebAPI.Host.Controllers.V1 { [ApiVersion("1.0")] [Route("v{version:apiVersion}/categories")] [ApiController] public class CategoriesController : ControllerBase { private readonly ICategoryService _categoryService; public CategoriesController(ICategoryService categoryService) { _categoryService = categoryService; } [HttpGet("root-categories")] public async Task GetRootCategories() { User? user = (User?)HttpContext.Items["User"]; return Ok(await _categoryService.GetRootCategories(user.Id)); } [HttpGet("child-categories")] public async Task GetChildCategories(int parentCategoryId) { User? user = (User?)HttpContext.Items["User"]; return Ok(await _categoryService.GetChildCategories(parentCategoryId, user.Id)); } [HttpGet("granted-categories")] public async Task GetCategories(int userId) => Ok(await _categoryService.GetCategories(userId)); } }