Update routes/subscription.py
Browse files- routes/subscription.py +9 -5
routes/subscription.py
CHANGED
@@ -23,6 +23,10 @@ SUPABASE_HEADERS = {
|
|
23 |
"Content-Type": "application/json"
|
24 |
}
|
25 |
|
|
|
|
|
|
|
|
|
26 |
# 📌 Agora recebemos `user_id` (ID do cliente que está comprando)
|
27 |
class SubscriptionRequest(BaseModel):
|
28 |
id: str # ID do estilista
|
@@ -172,19 +176,19 @@ def cancel_subscription(data: CancelSubscriptionRequest):
|
|
172 |
|
173 |
# 🚀 Verificação de Assinatura
|
174 |
@router.post("/check_subscription")
|
175 |
-
def check_subscription(
|
176 |
try:
|
177 |
# Buscar todas as assinaturas ativas para o usuário (cliente)
|
178 |
subscriptions = stripe.Subscription.list(
|
179 |
-
customer=user_id, # ID do cliente
|
180 |
-
status="active",
|
181 |
-
expand=["data.items"]
|
182 |
)
|
183 |
|
184 |
# Verificar se existe uma assinatura ativa para o estilista
|
185 |
for subscription in subscriptions["data"]:
|
186 |
# Verifica se o stylist_id está presente no metadata da assinatura
|
187 |
-
if subscription.metadata.get("stylist_id") == stylist_id:
|
188 |
return {
|
189 |
"status": "active",
|
190 |
"subscription_id": subscription.id,
|
|
|
23 |
"Content-Type": "application/json"
|
24 |
}
|
25 |
|
26 |
+
class CheckSubscriptionRequest(BaseModel):
|
27 |
+
user_id: str
|
28 |
+
stylist_id: str
|
29 |
+
|
30 |
# 📌 Agora recebemos `user_id` (ID do cliente que está comprando)
|
31 |
class SubscriptionRequest(BaseModel):
|
32 |
id: str # ID do estilista
|
|
|
176 |
|
177 |
# 🚀 Verificação de Assinatura
|
178 |
@router.post("/check_subscription")
|
179 |
+
def check_subscription(data: CheckSubscriptionRequest):
|
180 |
try:
|
181 |
# Buscar todas as assinaturas ativas para o usuário (cliente)
|
182 |
subscriptions = stripe.Subscription.list(
|
183 |
+
customer=data.user_id, # ID do cliente
|
184 |
+
status="active", # Assinaturas ativas
|
185 |
+
expand=["data.items"] # Expande os dados para pegar os itens e o metadata
|
186 |
)
|
187 |
|
188 |
# Verificar se existe uma assinatura ativa para o estilista
|
189 |
for subscription in subscriptions["data"]:
|
190 |
# Verifica se o stylist_id está presente no metadata da assinatura
|
191 |
+
if subscription.metadata.get("stylist_id") == data.stylist_id:
|
192 |
return {
|
193 |
"status": "active",
|
194 |
"subscription_id": subscription.id,
|