diff --git a/Webshop.Api/Controllers/Admin/AdminCategoryController.cs b/Webshop.Api/Controllers/Admin/AdminCategoryController.cs index 2502496..e840703 100644 --- a/Webshop.Api/Controllers/Admin/AdminCategoryController.cs +++ b/Webshop.Api/Controllers/Admin/AdminCategoryController.cs @@ -10,7 +10,7 @@ using Webshop.Application.Services.Admin; namespace Webshop.Api.Controllers.Admin { [ApiController] - [Route("api/v1/admin/categorys")] + [Route("api/v1/admin/[controller]")] [Authorize(Roles = "Admin")] public class AdminCategorysController : ControllerBase { diff --git a/Webshop.Api/Controllers/Admin/AdminOrdersController.cs b/Webshop.Api/Controllers/Admin/AdminOrdersController.cs index 1fb46a1..ddc55e3 100644 --- a/Webshop.Api/Controllers/Admin/AdminOrdersController.cs +++ b/Webshop.Api/Controllers/Admin/AdminOrdersController.cs @@ -11,7 +11,7 @@ using Webshop.Domain.Enums; namespace Webshop.Api.Controllers.Admin { [ApiController] - [Route("api/v1/admin/orders")] + [Route("api/v1/admin/[controller]")] [Authorize(Roles = "Admin")] public class AdminOrdersController : ControllerBase { diff --git a/Webshop.Api/Controllers/Admin/AdminPaymentMethodsController.cs b/Webshop.Api/Controllers/Admin/AdminPaymentMethodsController.cs index b83a672..8c90c44 100644 --- a/Webshop.Api/Controllers/Admin/AdminPaymentMethodsController.cs +++ b/Webshop.Api/Controllers/Admin/AdminPaymentMethodsController.cs @@ -10,7 +10,7 @@ using Webshop.Application.Services.Admin; // IAdminPaymentMethodService namespace Webshop.Api.Controllers.Admin { [ApiController] - [Route("api/v1/admin/paymentmethods")] // Saubere Route + [Route("api/v1/admin/[controller]")] // Saubere Route [Authorize(Roles = "Admin")] // Nur Admins public class AdminPaymentMethodsController : ControllerBase { diff --git a/Webshop.Api/Controllers/Admin/AdminShippingMethodsController.cs b/Webshop.Api/Controllers/Admin/AdminShippingMethodsController.cs index 3528b02..1c6dbd3 100644 --- a/Webshop.Api/Controllers/Admin/AdminShippingMethodsController.cs +++ b/Webshop.Api/Controllers/Admin/AdminShippingMethodsController.cs @@ -10,7 +10,7 @@ using Webshop.Application.Services.Admin; namespace Webshop.Api.Controllers.Admin { [ApiController] - [Route("api/v1/admin/shippingmethods")] + [Route("api/v1/admin/[controller]")] [Authorize(Roles = "Admin")] public class AdminShippingMethodsController : ControllerBase { diff --git a/Webshop.Api/Controllers/Customers/AddressesController.cs b/Webshop.Api/Controllers/Customers/AddressesController.cs index d9388ea..649b2d1 100644 --- a/Webshop.Api/Controllers/Customers/AddressesController.cs +++ b/Webshop.Api/Controllers/Customers/AddressesController.cs @@ -11,7 +11,7 @@ using Webshop.Application.Services.Customers; namespace Webshop.Api.Controllers.Customer { [ApiController] - [Route("api/v1/customer/addresses")] + [Route("api/v1/customer/[controller]")] [Authorize(Roles = "Customer")] public class AddressesController : ControllerBase { diff --git a/Webshop.Api/Controllers/Customers/CustomerController.cs b/Webshop.Api/Controllers/Customers/CustomerController.cs index 0d7e284..51df959 100644 --- a/Webshop.Api/Controllers/Customers/CustomerController.cs +++ b/Webshop.Api/Controllers/Customers/CustomerController.cs @@ -15,7 +15,7 @@ namespace Webshop.Api.Controllers.Customer { [ApiController] - [Route("api/v1/[controller]")] // z.B. /api/v1/customer/profile + [Route("api/v1/customer/[controller]")] // z.B. /api/v1/customer/profile [Authorize(Roles = "Customer")] public class CustomerController : ControllerBase { diff --git a/Webshop.Api/Controllers/Customers/OrdersController.cs b/Webshop.Api/Controllers/Customers/OrdersController.cs index 6fe8761..a7c9f4d 100644 --- a/Webshop.Api/Controllers/Customers/OrdersController.cs +++ b/Webshop.Api/Controllers/Customers/OrdersController.cs @@ -12,7 +12,7 @@ using Webshop.Application.Services.Customers.Interfaces; // Für IOrderService namespace Webshop.Api.Controllers.Customer { [ApiController] - [Route("api/v1/customer/orders")] + [Route("api/v1/customer/[controller]")] [Authorize(Roles = "Customer")] public class OrdersController : ControllerBase { diff --git a/Webshop.Api/Controllers/Public/CategoryController.cs b/Webshop.Api/Controllers/Public/CategoryController.cs index 2d60516..bf3d38b 100644 --- a/Webshop.Api/Controllers/Public/CategoryController.cs +++ b/Webshop.Api/Controllers/Public/CategoryController.cs @@ -9,7 +9,7 @@ using Webshop.Application.Services.Public; namespace Webshop.Api.Controllers.Public { [ApiController] - [Route("api/v1/public/categorys")] + [Route("api/v1/public/[controller]")] [AllowAnonymous] public class CategoryController : ControllerBase { diff --git a/Webshop.Api/Controllers/Public/PaymentMethodsController.cs b/Webshop.Api/Controllers/Public/PaymentMethodsController.cs index 10e6ff2..60c406d 100644 --- a/Webshop.Api/Controllers/Public/PaymentMethodsController.cs +++ b/Webshop.Api/Controllers/Public/PaymentMethodsController.cs @@ -9,7 +9,7 @@ using Webshop.Application.Services.Public; // IPaymentMethodService namespace Webshop.Api.Controllers.Public { [ApiController] - [Route("api/v1/public/paymentmethods")] // Saubere Route + [Route("api/v1/public/[controller]")] // Saubere Route [AllowAnonymous] // Jeder darf die verfügbaren Zahlungsmethoden sehen public class PaymentMethodsController : ControllerBase { diff --git a/Webshop.Api/Controllers/Public/ProductsController.cs b/Webshop.Api/Controllers/Public/ProductsController.cs index 2f7a5c4..bef694a 100644 --- a/Webshop.Api/Controllers/Public/ProductsController.cs +++ b/Webshop.Api/Controllers/Public/ProductsController.cs @@ -9,7 +9,7 @@ using Webshop.Application.Services.Public.Interfaces; // <-- WICHTIGES USING HIN namespace Webshop.Api.Controllers.Public { [ApiController] - [Route("api/v1/public/products")] // Route explizit gemacht für Klarheit + [Route("api/v1/public/[controller]")] // Route explizit gemacht für Klarheit [AllowAnonymous] public class ProductsController : ControllerBase { diff --git a/Webshop.Api/Program.cs b/Webshop.Api/Program.cs index 6af172a..096dee7 100644 --- a/Webshop.Api/Program.cs +++ b/Webshop.Api/Program.cs @@ -138,18 +138,18 @@ builder.Services.AddSwaggerGen(c => } var tag = controllerName.Replace("Admin", "").Replace("Controller", ""); // Entfernt Präfixe/Suffixe - // Erkenne den Hauptbereich anhand des Routen-Präfixes - if (api.RelativePath.StartsWith("api/v1/admin")) - { - // Erzeugt einen Tag wie "Admin - Products", "Admin - Users" etc. - return new[] { $"Admin - {tag}" }; - } if (api.RelativePath.StartsWith("api/v1/auth")) { // Auth hat normalerweise nur einen Controller, daher keine Untergruppe return new[] { "Auth" }; } + // Erkenne den Hauptbereich anhand des Routen-Präfixes + if (api.RelativePath.StartsWith("api/v1/admin")) + { + // Erzeugt einen Tag wie "Admin - Products", "Admin - Users" etc. + return new[] { $"Admin - {tag}" }; + } if (api.RelativePath.StartsWith("api/v1/customer")) { // Erzeugt einen Tag wie "Customer - Profile", "Customer - Orders"