feat: add mpre endpoints
This commit is contained in:
@@ -1,6 +1,6 @@
|
||||
from decimal import Decimal
|
||||
from pydantic import BaseModel,Field
|
||||
from src.application.domain.enums import OrderStatus
|
||||
from src.application.domain.enums import OrderStatus,PaymentStatus
|
||||
|
||||
|
||||
class CreateOrder(BaseModel):
|
||||
@@ -34,11 +34,82 @@ class OrderPaymentResponse(BaseModel):
|
||||
itpay_created_at: str | None = None
|
||||
|
||||
|
||||
class PaymentResponse(BaseModel):
|
||||
id: str | None = None
|
||||
created_at: str | None = None
|
||||
updated_at: str | None = None
|
||||
user_id: str | None = None
|
||||
order_id: str | None = None
|
||||
status: PaymentStatus | None = None
|
||||
receipt_cloudekassir_id: str | None = None
|
||||
receipt_cloudekassir_link: str | None = None
|
||||
itpay_payment_id: str | None = None
|
||||
itpay_paid_amount: str | None = None
|
||||
transaction_id: str | None = None
|
||||
web3_transaction_hash: str | None = None
|
||||
paid_at: str | None = None
|
||||
expired_date: str | None = None
|
||||
|
||||
|
||||
class CreateOrderResponse(BaseModel):
|
||||
status_code: int
|
||||
order: OrderPaymentResponse
|
||||
|
||||
|
||||
class PaymentConfigResponse(BaseModel):
|
||||
status_code: int
|
||||
usdt_exchange_rate: str
|
||||
gas_fee: str
|
||||
service_fee_rate: str
|
||||
one_usdt_service_fee: str
|
||||
one_usdt_total_price: str
|
||||
created_at: str
|
||||
|
||||
|
||||
class PaymentQuoteResponse(BaseModel):
|
||||
status_code: int
|
||||
usdt_amount: str
|
||||
usdt_exchange_rate: str
|
||||
gas_fee: str
|
||||
service_fee: str
|
||||
total_price: str
|
||||
service_fee_rate: str
|
||||
created_at: str
|
||||
|
||||
|
||||
class OrderWithPaymentResponse(BaseModel):
|
||||
order: OrderPaymentResponse
|
||||
payment: PaymentResponse | None = None
|
||||
|
||||
|
||||
class OrderDetailResponse(OrderWithPaymentResponse):
|
||||
status_code: int
|
||||
|
||||
|
||||
class OrdersResponse(BaseModel):
|
||||
status_code: int
|
||||
orders: list[OrderWithPaymentResponse]
|
||||
limit: int
|
||||
offset: int
|
||||
|
||||
|
||||
class PaymentsResponse(BaseModel):
|
||||
status_code: int
|
||||
payments: list[PaymentResponse]
|
||||
limit: int
|
||||
offset: int
|
||||
|
||||
|
||||
class OrderStatusResponse(BaseModel):
|
||||
status_code: int
|
||||
order_id: str
|
||||
order_status: OrderStatus | None = None
|
||||
payment_status: PaymentStatus | None = None
|
||||
receipt_cloudekassir_link: str | None = None
|
||||
web3_transaction_hash: str | None = None
|
||||
updated_at: str | None = None
|
||||
|
||||
|
||||
class ErrorResponse(BaseModel):
|
||||
detail: str
|
||||
status_code: int
|
||||
|
||||
Reference in New Issue
Block a user