// src/Webshop.Api/Controllers/Public/CategoriesController.cs using Microsoft.AspNetCore.Authorization; using Microsoft.AspNetCore.Mvc; using System.Collections.Generic; using System.Threading.Tasks; using Webshop.Application.DTOs.Categorys; using Webshop.Application.Services.Public; namespace Webshop.Api.Controllers.Public { [ApiController] [Route("api/v1/public/categories")] [AllowAnonymous] public class CategorysController : ControllerBase { private readonly ICategoryService _categoryService; public CategorysController(ICategoryService categoryService) { _categoryService = categoryService; } [HttpGet] public async Task>> GetActiveCategories() { var categories = await _categoryService.GetAllActiveAsync(); return Ok(categories); } [HttpGet("{slug}")] public async Task> GetCategoryBySlug(string slug) { var category = await _categoryService.GetBySlugAsync(slug); if (category == null) return NotFound(); return Ok(category); } } }