swagger
This commit is contained in:
@@ -1,10 +1,12 @@
|
||||
// src/Webshop.Api/SwaggerFilters/AddExampleSchemaFilter.cs
|
||||
using Microsoft.OpenApi.Models;
|
||||
using Swashbuckle.AspNetCore.SwaggerGen;
|
||||
using Microsoft.OpenApi.Any; // Wichtig für OpenApiString, OpenApiDouble etc.
|
||||
using Webshop.Application.DTOs; // ProductDto, AdminProductDto, SupplierDto
|
||||
using Webshop.Application.DTOs.Auth; // LoginRequestDto, RegisterRequestDto, AuthResponseDto
|
||||
using Webshop.Application.DTOs.Users; // UserDto
|
||||
using Microsoft.OpenApi.Any;
|
||||
using Webshop.Application.DTOs;
|
||||
using Webshop.Application.DTOs.Auth;
|
||||
using Webshop.Application.DTOs.Users;
|
||||
using Webshop.Domain.Enums;
|
||||
using System; // Für Guid.NewGuid()
|
||||
|
||||
namespace Webshop.Api.SwaggerFilters
|
||||
{
|
||||
@@ -13,21 +15,23 @@ namespace Webshop.Api.SwaggerFilters
|
||||
public void Apply(OpenApiSchema schema, SchemaFilterContext context)
|
||||
{
|
||||
var type = context.Type;
|
||||
// Eine eindeutige Kennung, die wir an SKU/Slug anhängen können
|
||||
var uniqueId = Guid.NewGuid().ToString().Substring(0, 8); // Z.B. 8 Zeichen der GUID
|
||||
|
||||
// --- Authentifizierung & Benutzer ---
|
||||
// --- Authentifizierung & Benutzer (Allgemeine Schemas) ---
|
||||
if (type == typeof(LoginRequestDto))
|
||||
{
|
||||
schema.Example = new OpenApiObject
|
||||
{
|
||||
["email"] = new OpenApiString("admin@yourwebshop.com"),
|
||||
["password"] = new OpenApiString("SecureAdminPass123!")
|
||||
["email"] = new OpenApiString("user@example.com"),
|
||||
["password"] = new OpenApiString("Password123!")
|
||||
};
|
||||
}
|
||||
else if (type == typeof(RegisterRequestDto))
|
||||
{
|
||||
schema.Example = new OpenApiObject
|
||||
{
|
||||
["email"] = new OpenApiString("neuer.kunde@example.com"),
|
||||
["email"] = new OpenApiString($"neuer.kunde.{uniqueId}@example.com"), // Eindeutige E-Mail
|
||||
["password"] = new OpenApiString("NeuesPasswort123!"),
|
||||
["confirmPassword"] = new OpenApiString("NeuesPasswort123!"),
|
||||
["firstName"] = new OpenApiString("Erika"),
|
||||
@@ -42,7 +46,7 @@ namespace Webshop.Api.SwaggerFilters
|
||||
["errorMessage"] = new OpenApiString(""),
|
||||
["token"] = new OpenApiString("eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiaWF0IjoxNTE2MjM5MDIyfQ.SflKxwRJSMeKKF2QT4fwpMeJf36POk6yJV_adQssw5c"),
|
||||
["userId"] = new OpenApiString(Guid.NewGuid().ToString()),
|
||||
["email"] = new OpenApiString("test@example.com"),
|
||||
["email"] = new OpenApiString("loggedin@example.com"),
|
||||
["roles"] = new OpenApiArray { new OpenApiString("Customer") }
|
||||
};
|
||||
}
|
||||
@@ -51,9 +55,9 @@ namespace Webshop.Api.SwaggerFilters
|
||||
schema.Example = new OpenApiObject
|
||||
{
|
||||
["id"] = new OpenApiString(Guid.NewGuid().ToString()),
|
||||
["email"] = new OpenApiString("admin@yourwebshop.com"),
|
||||
["userName"] = new OpenApiString("admin@yourwebshop.com"),
|
||||
["roles"] = new OpenApiArray { new OpenApiString("Admin") },
|
||||
["email"] = new OpenApiString("user@example.com"),
|
||||
["userName"] = new OpenApiString("user@example.com"),
|
||||
["roles"] = new OpenApiArray { new OpenApiString("Customer") },
|
||||
["createdDate"] = new OpenApiString(DateTimeOffset.UtcNow.ToString("o")),
|
||||
["emailConfirmed"] = new OpenApiBoolean(true)
|
||||
};
|
||||
@@ -63,36 +67,36 @@ namespace Webshop.Api.SwaggerFilters
|
||||
{
|
||||
schema.Example = new OpenApiObject
|
||||
{
|
||||
["id"] = new OpenApiString(Guid.Empty.ToString()), // Bei POST leer lassen/null
|
||||
["name"] = new OpenApiString("Beispiel Produkt X"),
|
||||
["description"] = new OpenApiString("Eine kurze Beschreibung für das Produkt X."),
|
||||
["sku"] = new OpenApiString("SKU-PUB-X001"), // Muss einzigartig sein!
|
||||
["id"] = new OpenApiString(Guid.Empty.ToString()),
|
||||
["name"] = new OpenApiString($"Public Produkt Beispiel {uniqueId}"),
|
||||
["description"] = new OpenApiString("Eine kurze Beschreibung für das öffentliche Produkt."),
|
||||
["sku"] = new OpenApiString($"PUB-PROD-{uniqueId}"),
|
||||
["price"] = new OpenApiDouble(29.99),
|
||||
["isActive"] = new OpenApiBoolean(true),
|
||||
["isInStock"] = new OpenApiBoolean(true),
|
||||
["stockQuantity"] = new OpenApiInteger(100),
|
||||
["imageUrl"] = new OpenApiString("https://example.com/images/productX.jpg")
|
||||
["imageUrl"] = new OpenApiString("https://example.com/images/public_prod.jpg")
|
||||
};
|
||||
}
|
||||
else if (type == typeof(AdminProductDto))
|
||||
{
|
||||
schema.Example = new OpenApiObject
|
||||
{
|
||||
["id"] = new OpenApiString(Guid.Empty.ToString()), // Bei POST leer lassen/null
|
||||
["name"] = new OpenApiString("Admin Produkt Z (Full Details)"),
|
||||
["description"] = new OpenApiString("Detaillierte Beschreibung für das Admin-Produkt Z."),
|
||||
["sku"] = new OpenApiString("SKU-ADM-Z001"), // Muss einzigartig sein!
|
||||
["id"] = new OpenApiString(Guid.Empty.ToString()),
|
||||
["name"] = new OpenApiString($"Admin Produkt (Beispiel) {uniqueId}"),
|
||||
["description"] = new OpenApiString("Detaillierte Beschreibung für das Admin-Produkt."),
|
||||
["sku"] = new OpenApiString($"ADM-PROD-{uniqueId}"),
|
||||
["price"] = new OpenApiDouble(149.99),
|
||||
["oldPrice"] = new OpenApiNull(),
|
||||
["isActive"] = new OpenApiBoolean(true),
|
||||
["isInStock"] = new OpenApiBoolean(true),
|
||||
["stockQuantity"] = new OpenApiInteger(50),
|
||||
["weight"] = new OpenApiDouble(1.2),
|
||||
["imageUrl"] = new OpenApiString("https://example.com/images/admin_prodZ.jpg"),
|
||||
["slug"] = new OpenApiString("admin-produkt-z-details"), // Muss einzigartig sein!
|
||||
["imageUrl"] = new OpenApiString("https://example.com/images/admin_prod.jpg"),
|
||||
["slug"] = new OpenApiString($"admin-produkt-beispiel-slug-{uniqueId}"),
|
||||
["createdDate"] = new OpenApiString(DateTimeOffset.UtcNow.ToString("o")),
|
||||
["lastModifiedDate"] = new OpenApiNull(),
|
||||
["supplierId"] = new OpenApiNull(), // ODER new OpenApiString("IHR-ECHTER-LIEFERANTEN-GUID-HIER"), wenn schon in DB
|
||||
["supplierId"] = new OpenApiNull(), // ODER new OpenApiString("IHR-ECHTER-LIEFERANTEN-GUID-HIER")
|
||||
["purchasePrice"] = new OpenApiDouble(80.00)
|
||||
};
|
||||
}
|
||||
@@ -100,12 +104,12 @@ namespace Webshop.Api.SwaggerFilters
|
||||
{
|
||||
schema.Example = new OpenApiObject
|
||||
{
|
||||
["id"] = new OpenApiString(Guid.Empty.ToString()), // Bei POST leer lassen/null
|
||||
["name"] = new OpenApiString("Zulieferer Solutions GmbH"),
|
||||
["id"] = new OpenApiString(Guid.Empty.ToString()),
|
||||
["name"] = new OpenApiString($"Zulieferer Solutions GmbH {uniqueId}"),
|
||||
["contactPerson"] = new OpenApiString("Anna Bauer"),
|
||||
["email"] = new OpenApiString("kontakt@zulieferer.com"),
|
||||
["email"] = new OpenApiString($"kontakt.{uniqueId}@zulieferer.com"),
|
||||
["phoneNumber"] = new OpenApiString("+4915198765432"),
|
||||
["addressId"] = new OpenApiNull(), // Oder new OpenApiString("IHR-ECHTER-ADRESS-GUID-HIER")
|
||||
["addressId"] = new OpenApiNull(),
|
||||
["notes"] = new OpenApiString("Wichtiger Lieferant für Rohstoffe.")
|
||||
};
|
||||
}
|
||||
@@ -114,12 +118,12 @@ namespace Webshop.Api.SwaggerFilters
|
||||
schema.Example = new OpenApiObject
|
||||
{
|
||||
["id"] = new OpenApiString(Guid.Empty.ToString()),
|
||||
["productId"] = new OpenApiString("PRODUCT_ID_HERE"), // MUSS ECHTE Produkt-ID sein
|
||||
["name"] = new OpenApiString("Farbe"),
|
||||
["value"] = new OpenApiString("Rot"),
|
||||
["sku"] = new OpenApiString("VAR-RED-001"),
|
||||
["productId"] = new OpenApiString("EIN_PRODUKT_GUID_HIER"),
|
||||
["name"] = new OpenApiString("Variante: Schwarz L"),
|
||||
["value"] = new OpenApiString("Schwarz, L"),
|
||||
["sku"] = new OpenApiString($"VARIANT-ABC-{uniqueId}"),
|
||||
["priceAdjustment"] = new OpenApiDouble(5.00),
|
||||
["stockQuantity"] = new OpenApiInteger(20),
|
||||
["stockQuantity"] = new OpenApiInteger(25),
|
||||
["imageUrl"] = new OpenApiString("https://example.com/images/prod-variant-red.jpg"),
|
||||
["isActive"] = new OpenApiBoolean(true)
|
||||
};
|
||||
@@ -129,9 +133,9 @@ namespace Webshop.Api.SwaggerFilters
|
||||
{
|
||||
schema.Example = new OpenApiObject
|
||||
{
|
||||
["id"] = new OpenApiString(Guid.Empty.ToString()),
|
||||
["name"] = new OpenApiString("Elektronik"),
|
||||
["slug"] = new OpenApiString("elektronik"),
|
||||
["id"] = new OpenApiString(Guid.NewGuid().ToString()),
|
||||
["name"] = new OpenApiString($"Elektronik {uniqueId}"),
|
||||
["slug"] = new OpenApiString($"elektronik-{uniqueId}"),
|
||||
["description"] = new OpenApiString("Produkte rund um Elektronik."),
|
||||
["parentCategoryId"] = new OpenApiNull(),
|
||||
["imageUrl"] = new OpenApiString("https://example.com/images/category_electronics.jpg"),
|
||||
@@ -143,8 +147,8 @@ namespace Webshop.Api.SwaggerFilters
|
||||
{
|
||||
schema.Example = new OpenApiObject
|
||||
{
|
||||
["name"] = new OpenApiString("Neue Kategorie"),
|
||||
["slug"] = new OpenApiString("neue-kategorie"), // Muss einzigartig sein!
|
||||
["name"] = new OpenApiString($"Neue Kategorie {uniqueId}"),
|
||||
["slug"] = new OpenApiString($"neue-kategorie-{uniqueId}"),
|
||||
["description"] = new OpenApiString("Eine Beschreibung für die neue Kategorie."),
|
||||
["parentCategoryId"] = new OpenApiNull(),
|
||||
["imageUrl"] = new OpenApiString("https://example.com/images/new_category.jpg"),
|
||||
@@ -163,7 +167,7 @@ namespace Webshop.Api.SwaggerFilters
|
||||
["city"] = new OpenApiString("Musterstadt"),
|
||||
["postalCode"] = new OpenApiString("12345"),
|
||||
["country"] = new OpenApiString("Deutschland"),
|
||||
["type"] = new OpenApiString(AddressType.Shipping.ToString()) // Enum-Beispiel
|
||||
["type"] = new OpenApiString(AddressType.Shipping.ToString())
|
||||
};
|
||||
}
|
||||
// --- Kunden ---
|
||||
@@ -171,11 +175,11 @@ namespace Webshop.Api.SwaggerFilters
|
||||
{
|
||||
schema.Example = new OpenApiObject
|
||||
{
|
||||
["id"] = new OpenApiString(Guid.Empty.ToString()),
|
||||
["userId"] = new OpenApiString("EXISTING_IDENTITY_USER_ID"), // MUSS ECHTE IdentityUser ID sein
|
||||
["id"] = new OpenApiString(Guid.NewGuid().ToString()),
|
||||
["userId"] = new OpenApiString("EIN_IDENTITY_USER_ID_HIER"),
|
||||
["firstName"] = new OpenApiString("Max"),
|
||||
["lastName"] = new OpenApiString("Mustermann"),
|
||||
["email"] = new OpenApiString("max.mustermann@example.com"),
|
||||
["email"] = new OpenApiString($"max.mustermann.{uniqueId}@example.com"),
|
||||
["phoneNumber"] = new OpenApiString("+491719876543"),
|
||||
["defaultShippingAddressId"] = new OpenApiNull(),
|
||||
["defaultBillingAddressId"] = new OpenApiNull()
|
||||
@@ -187,16 +191,17 @@ namespace Webshop.Api.SwaggerFilters
|
||||
schema.Example = new OpenApiObject
|
||||
{
|
||||
["id"] = new OpenApiString(Guid.Empty.ToString()),
|
||||
["name"] = new OpenApiString("Sommerrabatt"),
|
||||
["name"] = new OpenApiString($"Sommerrabatt {uniqueId}"),
|
||||
["description"] = new OpenApiString("10% Rabatt auf alles"),
|
||||
["type"] = new OpenApiString(DiscountType.Percentage.ToString()),
|
||||
["value"] = new OpenApiDouble(10.00),
|
||||
["couponCode"] = new OpenApiString("SOMMER2025"), // Optional, muss eindeutig sein
|
||||
["couponCode"] = new OpenApiString($"SOMMER-{uniqueId}"), // Optional, muss eindeutig sein
|
||||
["startDate"] = new OpenApiString(DateTimeOffset.UtcNow.AddDays(1).ToString("o")),
|
||||
["endDate"] = new OpenApiString(DateTimeOffset.UtcNow.AddDays(30).ToString("o")),
|
||||
["isActive"] = new OpenApiBoolean(true),
|
||||
["maxUses"] = new OpenApiInteger(100),
|
||||
["currentUses"] = new OpenApiInteger(0)
|
||||
["currentUses"] = new OpenApiInteger(0),
|
||||
["description"] = new OpenApiString("Gültig vom 1. September bis 30. September.")
|
||||
};
|
||||
}
|
||||
// --- Bestellungen ---
|
||||
@@ -204,24 +209,24 @@ namespace Webshop.Api.SwaggerFilters
|
||||
{
|
||||
schema.Example = new OpenApiObject
|
||||
{
|
||||
["customerId"] = new OpenApiString("CUSTOMER_ID_HERE"), // Oder null für Gastbestellung
|
||||
["guestEmail"] = new OpenApiString("guest@example.com"), // Nur bei Gastbestellung
|
||||
["guestPhoneNumber"] = new OpenApiString("+491701234567"),
|
||||
["shippingAddressId"] = new OpenApiString("VALID_ADDRESS_ID_HERE"), // MUSS EXISTIEREN
|
||||
["billingAddressId"] = new OpenApiString("VALID_ADDRESS_ID_HERE"), // MUSS EXISTIEREN
|
||||
["paymentMethodId"] = new OpenApiString("VALID_PAYMENT_METHOD_ID_HERE"), // MUSS EXISTIEREN
|
||||
["shippingMethodId"] = new OpenApiString("VALID_SHIPPING_METHOD_ID_HERE"), // MUSS EXISTIEREN
|
||||
["customerId"] = new OpenApiString("CUSTOMER_ID_HERE"),
|
||||
["guestEmail"] = new OpenApiString($"gast.besteller.{uniqueId}@example.com"),
|
||||
["guestPhoneNumber"] = new OpenApiString("+4917611223344"),
|
||||
["shippingAddressId"] = new OpenApiString("VALID_ADDRESS_ID_HERE"),
|
||||
["billingAddressId"] = new OpenApiString("VALID_ADDRESS_ID_HERE"),
|
||||
["paymentMethodId"] = new OpenApiString("VALID_PAYMENT_METHOD_ID_HERE"),
|
||||
["shippingMethodId"] = new OpenApiString("VALID_SHIPPING_METHOD_ID_HERE"),
|
||||
["items"] = new OpenApiArray
|
||||
{
|
||||
new OpenApiObject
|
||||
{
|
||||
["productId"] = new OpenApiString("VALID_PRODUCT_ID_HERE"), // MUSS EXISTIEREN
|
||||
["productId"] = new OpenApiString("VALID_PRODUCT_ID_HERE"),
|
||||
["quantity"] = new OpenApiInteger(1)
|
||||
},
|
||||
new OpenApiObject
|
||||
{
|
||||
["productId"] = new OpenApiString("ANOTHER_PRODUCT_ID_HERE"),
|
||||
["productVariantId"] = new OpenApiString("VALID_VARIANT_ID_HERE"), // Optional
|
||||
["productVariantId"] = new OpenApiString("VALID_VARIANT_ID_HERE"),
|
||||
["quantity"] = new OpenApiInteger(2)
|
||||
}
|
||||
}
|
||||
@@ -232,7 +237,7 @@ namespace Webshop.Api.SwaggerFilters
|
||||
schema.Example = new OpenApiObject
|
||||
{
|
||||
["productId"] = new OpenApiString("VALID_PRODUCT_ID_HERE"),
|
||||
["productVariantId"] = new OpenApiNull(), // Oder new OpenApiString("VALID_VARIANT_ID_HERE")
|
||||
["productVariantId"] = new OpenApiNull(),
|
||||
["quantity"] = new OpenApiInteger(1)
|
||||
};
|
||||
}
|
||||
@@ -241,7 +246,7 @@ namespace Webshop.Api.SwaggerFilters
|
||||
schema.Example = new OpenApiObject
|
||||
{
|
||||
["id"] = new OpenApiString(Guid.NewGuid().ToString()),
|
||||
["orderNumber"] = new OpenApiString("WS-2025-0001"),
|
||||
["orderNumber"] = new OpenApiString($"WS-2025-{uniqueId}"),
|
||||
["orderDate"] = new OpenApiString(DateTimeOffset.UtcNow.ToString("o")),
|
||||
["status"] = new OpenApiString(OrderStatus.Processing.ToString()),
|
||||
["totalAmount"] = new OpenApiDouble(123.45),
|
||||
@@ -255,16 +260,16 @@ namespace Webshop.Api.SwaggerFilters
|
||||
schema.Example = new OpenApiObject
|
||||
{
|
||||
["id"] = new OpenApiString(Guid.NewGuid().ToString()),
|
||||
["orderNumber"] = new OpenApiString("WS-2025-0002"),
|
||||
["orderNumber"] = new OpenApiString($"WS-2025-{uniqueId}-Detail"),
|
||||
["customerId"] = new OpenApiString(Guid.NewGuid().ToString()),
|
||||
["orderDate"] = new OpenApiString(DateTimeOffset.UtcNow.ToString("o")),
|
||||
["status"] = new OpenApiString(OrderStatus.Shipped.ToString()),
|
||||
["totalAmount"] = new OpenApiDouble(245.67),
|
||||
["shippingAddressId"] = new OpenApiString("VALID_ADDRESS_ID"),
|
||||
["billingAddressId"] = new OpenApiString("VALID_ADDRESS_ID"),
|
||||
["paymentMethodId"] = new OpenApiString("VALID_PAYMENT_METHOD_ID"),
|
||||
["shippingAddressId"] = new OpenApiString("EXISTING_ADDRESS_ID"),
|
||||
["billingAddressId"] = new OpenApiString("EXISTING_ADDRESS_ID"),
|
||||
["paymentMethodId"] = new OpenApiString("EXISTING_PAYMENT_METHOD_ID"),
|
||||
["orderItems"] = new OpenApiArray {
|
||||
new OpenApiObject { ["id"] = new OpenApiString(Guid.NewGuid().ToString()), ["productId"] = new OpenApiString("PROD_A_ID"), ["productName"] = new OpenApiString("Produkt A"), ["quantity"] = new OpenApiInteger(1), ["unitPrice"] = new OpenApiDouble(100.00), ["totalPrice"] = new OpenApiDouble(100.00) }
|
||||
new OpenApiObject { ["id"] = new OpenApiString(Guid.NewGuid().ToString()), ["productId"] = new OpenApiString("PROD_B_ID"), ["productName"] = new OpenApiString("Produkt B"), ["quantity"] = new OpenApiInteger(1), ["unitPrice"] = new OpenApiDouble(199.99), ["totalPrice"] = new OpenApiDouble(199.99) }
|
||||
}
|
||||
};
|
||||
}
|
||||
@@ -274,22 +279,22 @@ namespace Webshop.Api.SwaggerFilters
|
||||
schema.Example = new OpenApiObject
|
||||
{
|
||||
["id"] = new OpenApiString(Guid.NewGuid().ToString()),
|
||||
["productId"] = new OpenApiString("PRODUCT_ID_HERE"),
|
||||
["customerId"] = new OpenApiString("CUSTOMER_ID_HERE"),
|
||||
["productId"] = new OpenApiString("EXISTING_PRODUCT_ID_HERE"),
|
||||
["customerId"] = new OpenApiString("EXISTING_CUSTOMER_ID_HERE"),
|
||||
["rating"] = new OpenApiInteger(5),
|
||||
["title"] = new OpenApiString("Super Produkt!"),
|
||||
["title"] = new OpenApiString($"Super Produkt! ({uniqueId})"),
|
||||
["comment"] = new OpenApiString("Ich bin sehr zufrieden mit diesem Produkt."),
|
||||
["reviewDate"] = new OpenApiString(DateTimeOffset.UtcNow.ToString("o")),
|
||||
["isApproved"] = new OpenApiBoolean(true)
|
||||
["isApproved"] = new OpenApiBoolean(false)
|
||||
};
|
||||
}
|
||||
else if (type == typeof(CreateReviewDto))
|
||||
{
|
||||
schema.Example = new OpenApiObject
|
||||
{
|
||||
["productId"] = new OpenApiString("PRODUCT_ID_HERE"),
|
||||
["productId"] = new OpenApiString("EXISTING_PRODUCT_ID_HERE"),
|
||||
["rating"] = new OpenApiInteger(4),
|
||||
["title"] = new OpenApiString("Gute Qualität"),
|
||||
["title"] = new OpenApiString($"Gute Qualität ({uniqueId})"),
|
||||
["comment"] = new OpenApiString("Das Produkt ist gut, aber die Lieferung dauerte etwas.")
|
||||
};
|
||||
}
|
||||
@@ -298,9 +303,9 @@ namespace Webshop.Api.SwaggerFilters
|
||||
{
|
||||
schema.Example = new OpenApiObject
|
||||
{
|
||||
["key"] = new OpenApiString("ShippingCostFlatRate"),
|
||||
["value"] = new OpenApiString("5.99"),
|
||||
["description"] = new OpenApiString("Pauschale Versandkosten für alle Bestellungen"),
|
||||
["key"] = new OpenApiString($"GlobalTaxRate-{uniqueId}"), // Für POST: Muss eindeutig sein
|
||||
["value"] = new OpenApiString("0.19"),
|
||||
["description"] = new OpenApiString("Allgemeiner Mehrwertsteuersatz"),
|
||||
["lastModifiedDate"] = new OpenApiString(DateTimeOffset.UtcNow.ToString("o"))
|
||||
};
|
||||
}
|
||||
@@ -310,11 +315,11 @@ namespace Webshop.Api.SwaggerFilters
|
||||
schema.Example = new OpenApiObject
|
||||
{
|
||||
["id"] = new OpenApiString(Guid.Empty.ToString()),
|
||||
["name"] = new OpenApiString("Kreditkarte (Stripe)"),
|
||||
["description"] = new OpenApiString("Zahlung über Stripe-Gateway."),
|
||||
["name"] = new OpenApiString($"Kreditkarte (Stripe) {uniqueId}"),
|
||||
["description"] = new OpenApiString("Online-Zahlungsdienstleister."),
|
||||
["isActive"] = new OpenApiBoolean(true),
|
||||
["gatewayType"] = new OpenApiString(PaymentGatewayType.Stripe.ToString()),
|
||||
["processingFee"] = new OpenApiDouble(0.02)
|
||||
["processingFee"] = new OpenApiDouble(0.035)
|
||||
};
|
||||
}
|
||||
// --- Versandmethoden ---
|
||||
@@ -323,12 +328,12 @@ namespace Webshop.Api.SwaggerFilters
|
||||
schema.Example = new OpenApiObject
|
||||
{
|
||||
["id"] = new OpenApiString(Guid.Empty.ToString()),
|
||||
["name"] = new OpenApiString("Standardversand DHL"),
|
||||
["description"] = new OpenApiString("Standardlieferung innerhalb von 2-3 Werktagen."),
|
||||
["cost"] = new OpenApiDouble(4.99),
|
||||
["name"] = new OpenApiString($"Expressversand UPS {uniqueId}"),
|
||||
["description"] = new OpenApiString("Lieferung am nächsten Werktag."),
|
||||
["cost"] = new OpenApiDouble(12.50),
|
||||
["isActive"] = new OpenApiBoolean(true),
|
||||
["minDeliveryDays"] = new OpenApiInteger(2),
|
||||
["maxDeliveryDays"] = new OpenApiInteger(3)
|
||||
["minDeliveryDays"] = new OpenApiInteger(1),
|
||||
["maxDeliveryDays"] = new OpenApiInteger(1)
|
||||
};
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user