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

70 lines
1.5 KiB
Python
Raw Normal View History

"""支付模块 Pydantic 模型定义(从 payment 迁入 app"""
2026-03-19 14:36:14 +08:00
from typing import 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