integrace api, stripe, vytvoření commecre app
This commit is contained in:
56
backend/thirdparty/stripe/serializers.py
vendored
56
backend/thirdparty/stripe/serializers.py
vendored
@@ -1,12 +1,54 @@
|
||||
from rest_framework import serializers
|
||||
|
||||
from rest_framework import serializers
|
||||
from .models import Product, Carrier, Order
|
||||
|
||||
class StripeCheckoutRequestSerializer(serializers.Serializer):
|
||||
amount = serializers.DecimalField(max_digits=12, decimal_places=2, min_value=0.01)
|
||||
product_name = serializers.CharField(required=False, default="Example Product")
|
||||
success_url = serializers.URLField(required=False)
|
||||
cancel_url = serializers.URLField(required=False)
|
||||
from ...commerce.serializers import ProductSerializer, CarrierSerializer
|
||||
|
||||
|
||||
class StripeCheckoutResponseSerializer(serializers.Serializer):
|
||||
url = serializers.URLField()
|
||||
class OrderSerializer(serializers.ModelSerializer):
|
||||
product = ProductSerializer(read_only=True)
|
||||
product_id = serializers.PrimaryKeyRelatedField(
|
||||
queryset=Product.objects.all(), source="product", write_only=True
|
||||
)
|
||||
carrier = CarrierSerializer(read_only=True)
|
||||
carrier_id = serializers.PrimaryKeyRelatedField(
|
||||
queryset=Carrier.objects.all(), source="carrier", write_only=True
|
||||
)
|
||||
|
||||
class Meta:
|
||||
model = Order
|
||||
fields = [
|
||||
"id",
|
||||
"product", "product_id",
|
||||
"carrier", "carrier_id",
|
||||
"quantity",
|
||||
"total_price",
|
||||
"status",
|
||||
"stripe_session_id",
|
||||
"created_at",
|
||||
"updated_at",
|
||||
]
|
||||
read_only_fields = ("total_price", "status", "stripe_session_id", "created_at", "updated_at")
|
||||
|
||||
queryset=Product.objects.all(), source="product", write_only=True
|
||||
|
||||
carrier = CarrierSerializer(read_only=True)
|
||||
carrier_id = serializers.PrimaryKeyRelatedField(
|
||||
queryset=Carrier.objects.all(), source="carrier", write_only=True
|
||||
)
|
||||
|
||||
class Meta:
|
||||
model = Order
|
||||
fields = [
|
||||
"id",
|
||||
"product", "product_id",
|
||||
"carrier", "carrier_id",
|
||||
"quantity",
|
||||
"total_price",
|
||||
"status",
|
||||
"stripe_session_id",
|
||||
"created_at",
|
||||
"updated_at",
|
||||
]
|
||||
read_only_fields = ("total_price", "status", "stripe_session_id", "created_at", "updated_at")
|
||||
|
||||
Reference in New Issue
Block a user