Изменение эндпоинтов и БД для работы с длинными telegram_id(сменил тип данных с инт на стринг)
This commit is contained in:
@@ -26,14 +26,14 @@ class DatabaseManager:
|
||||
Получает активные подписки пользователя
|
||||
"""
|
||||
return await self.postgres_repo.list_active_tickets(user_id)
|
||||
async def create_user(self, telegram_id: int):
|
||||
async def create_user(self, telegram_id: str, referrer_id: str):
|
||||
"""
|
||||
Создаёт пользователя.
|
||||
"""
|
||||
username = self.generate_string(6)
|
||||
return await self.postgres_repo.create_user(telegram_id, username)
|
||||
return await self.postgres_repo.create_user(telegram_id, username, str)
|
||||
|
||||
async def get_user_by_telegram_id(self, telegram_id: int):
|
||||
async def get_user_by_telegram_id(self, telegram_id: str):
|
||||
"""
|
||||
Возвращает пользователя по Telegram ID.
|
||||
"""
|
||||
@@ -56,7 +56,7 @@ class DatabaseManager:
|
||||
"""
|
||||
return await self.postgres_repo.get_last_transactions(user_id, limit)
|
||||
|
||||
async def update_balance(self, telegram_id: int, amount: float):
|
||||
async def update_balance(self, telegram_id: str, amount: float):
|
||||
"""
|
||||
Обновляет баланс пользователя и добавляет транзакцию.
|
||||
"""
|
||||
@@ -76,7 +76,7 @@ class DatabaseManager:
|
||||
return "OK"
|
||||
|
||||
|
||||
async def get_active_subscription(self, telegram_id: int):
|
||||
async def get_active_subscription(self, telegram_id: str):
|
||||
"""
|
||||
Проверяет наличие активной подписки.
|
||||
"""
|
||||
@@ -170,7 +170,7 @@ class DatabaseManager:
|
||||
return new_subscription, server
|
||||
|
||||
|
||||
async def generate_uri(self, telegram_id: int):
|
||||
async def generate_uri(self, telegram_id: str):
|
||||
"""
|
||||
Генерация URI для пользователя.
|
||||
|
||||
|
||||
@@ -12,13 +12,13 @@ class PostgresRepository:
|
||||
self.session_generator = session_generator
|
||||
self.logger = logger
|
||||
|
||||
async def create_user(self, telegram_id: int, username: str):
|
||||
async def create_user(self, telegram_id: str, username: str, referrer_id: str):
|
||||
"""
|
||||
Создаёт нового пользователя в PostgreSQL.
|
||||
"""
|
||||
async for session in self.session_generator():
|
||||
try:
|
||||
new_user = User(telegram_id=telegram_id, username=username)
|
||||
new_user = User(telegram_id=telegram_id, username=username, referrer_id=referrer_id)
|
||||
session.add(new_user)
|
||||
await session.commit()
|
||||
return new_user
|
||||
@@ -27,7 +27,7 @@ class PostgresRepository:
|
||||
await session.rollback()
|
||||
return None
|
||||
|
||||
async def get_active_subscription(self, telegram_id: int):
|
||||
async def get_active_subscription(self, telegram_id: str):
|
||||
"""
|
||||
Проверяет наличие активной подписки у пользователя.
|
||||
"""
|
||||
@@ -45,7 +45,7 @@ class PostgresRepository:
|
||||
self.logger.error(f"Ошибка проверки активной подписки для пользователя {telegram_id}: {e}")
|
||||
return None
|
||||
|
||||
async def get_user_by_telegram_id(self, telegram_id: int):
|
||||
async def get_user_by_telegram_id(self, telegram_id: str):
|
||||
"""
|
||||
Возвращает пользователя по Telegram ID.
|
||||
"""
|
||||
|
||||
Reference in New Issue
Block a user