Upload 1.5.0 version

Upload docs
This commit is contained in:
Teleport
2023-05-08 21:43:58 +03:00
parent 852a407ceb
commit 6b771f8925
22 changed files with 676 additions and 367 deletions

View File

@@ -1,45 +1,45 @@
class PaymentParameters:
def __init__(self, amount: int, redirectUrl: str, webhookUrl: str, data: str):
"""
Создание параметров ссылки на оплату
:param amount: Стоимость покупки в АРах.
:param redirectUrl: URL страницы, на которую попадет пользователь после оплаты.
:param webhookUrl: URL, куда наш сервер направит запрос, чтобы оповестить ваш сервер об успешной оплате.
:param data: Строка до 100 символов, сюда можно помеcтить любые полезные данных.
:return: Str ссылка на страницу оплаты, на которую стоит перенаправить пользователя.
"""
self.amount = amount
self.redirectUrl = redirectUrl
self.webhookUrl = webhookUrl
self.data = data
def __str__(self):
return f'''
amount: {self.amount}
redirectUrl: {self.redirectUrl}
webhookUrl: {self.webhookUrl}
data: {self.data}
'''
from pydantic import BaseModel, validator
import validators
class TransactionParameters:
def __init__(self, receiver: str, amount: int, comment: str = 'No comment'):
"""
Отправка транзакции
:param receiver: Номер карты на которую будет совершена транзакция.
:param amount: Сумма транзакции.
:param comment: Комментарий к транзакции.
:return: None.
"""
class Payment(BaseModel):
amount: int
redirectUrl: str
webhookUrl: str
data: str
self.receiver = receiver
self.amount = amount
self.comment = comment
@validator('amount')
def max_amount(cls, value: int):
if value > 1728:
raise ValueError('amount must be <= 1728')
return value
def __str__(self):
return f'''
receiver: {self.receiver}
amount: {str(self.amount)}
comment: {self.comment}
'''
@validator('data')
def data_size(cls, value):
if len(value) > 100:
raise ValueError('data length must be <=100.')
return value
@validator('redirectUrl', 'webhookUrl')
def verify_url(cls, value: str):
if validators.url(value):
return value
raise ValueError('is not url')
class Transaction(BaseModel):
receiver: str
amount: int
comment: str
@validator('comment')
def comment_size(cls, value: str):
if len(value) > 32:
raise ValueError('comment length must be <=32.')
return value
@validator('receiver')
def receiver_type(cls, value: str):
if len(value) != 5 or not value.isnumeric():
raise ValueError(f'Receiver card (`{value}`) number not valid')
return value