Files
life-echo/api/app/features/payment/schemas.py

69 lines
1.5 KiB
Python
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
"""支付模块 Pydantic 模型定义(从 payment 迁入 app"""
from typing import Any, Dict, Optional
from pydantic import BaseModel
class PaymentResult(BaseModel):
success: bool
payment_method: str
out_trade_no: str
wechat_params: Optional[Dict[str, str]] = None
alipay_order_string: Optional[str] = None
error_message: Optional[str] = None
class NotifyResult(BaseModel):
success: bool
out_trade_no: Optional[str] = None
trade_no: Optional[str] = None
total_amount: Optional[int] = None
trade_status: Optional[str] = None
error_message: Optional[str] = None
class PaymentStatus(BaseModel):
success: bool
out_trade_no: str
trade_no: Optional[str] = None
trade_status: str
total_amount: Optional[int] = None
error_message: Optional[str] = None
class CreateOrderRequest(BaseModel):
plan_id: str
payment_method: str
class CreateOrderResponse(BaseModel):
order_id: str
payment_method: str
wechat_params: Optional[Dict[str, str]] = None
alipay_order_string: Optional[str] = None
class OrderStatusResponse(BaseModel):
order_id: str
plan_id: str
plan_name: str
amount: int
currency: str
payment_method: str
status: str
trade_no: Optional[str] = None
created_at: str
paid_at: Optional[str] = None
class OrderListResponse(BaseModel):
id: str
plan_id: str
plan_name: str
amount: int
currency: str
status: str
payment_method: str
created_at: str
paid_at: Optional[str] = None