add new func for ban
This commit is contained in:
@@ -239,6 +239,68 @@ class BotDB:
|
||||
finally:
|
||||
self.close()
|
||||
|
||||
def get_user_id_by_username(self, username: str):
|
||||
"""
|
||||
Возвращает user_id пользователя из базы данных по его user_name в Telegram.
|
||||
|
||||
Args:
|
||||
username (str): Username пользователя.
|
||||
|
||||
Returns:
|
||||
user_id (int): Идентификатор пользователя в Telegram.
|
||||
None: Если пользователь не найден.
|
||||
|
||||
Raises:
|
||||
sqlite3.Error: Если произошла ошибка при выполнении запроса.
|
||||
"""
|
||||
try:
|
||||
self.connect()
|
||||
self.cursor.execute("SELECT user_id FROM our_users WHERE username = ?", (username,))
|
||||
result = self.cursor.fetchone()
|
||||
if result:
|
||||
user_id = result[0]
|
||||
self.logger.info(f"User_id пользователя найден: username={username}, user_id={user_id}")
|
||||
return user_id
|
||||
else:
|
||||
self.logger.info(f"Пользователь с username={username} не найден в базе данных.")
|
||||
return None
|
||||
except sqlite3.Error as error:
|
||||
self.logger.error(f"Ошибка при получении username из базы данных: {error}")
|
||||
raise
|
||||
finally:
|
||||
self.close()
|
||||
|
||||
def get_full_name_by_id(self, user_id: str):
|
||||
"""
|
||||
Возвращает full_name пользователя из базы данных по его username в Telegram.
|
||||
|
||||
Args:
|
||||
user_id (int): Идентификатор пользователя в Telegram.
|
||||
|
||||
Returns:
|
||||
full_name (str): Username пользователя.
|
||||
None: Если пользователь не найден.
|
||||
|
||||
Raises:
|
||||
sqlite3.Error: Если произошла ошибка при выполнении запроса.
|
||||
"""
|
||||
try:
|
||||
self.connect()
|
||||
self.cursor.execute("SELECT full_name FROM our_users WHERE user_id = ?", (user_id,))
|
||||
result = self.cursor.fetchone()
|
||||
if result:
|
||||
full_name = result[0]
|
||||
self.logger.info(f"Username пользователя найден: user_id={user_id}, full_name={full_name}")
|
||||
return full_name
|
||||
else:
|
||||
self.logger.info(f"Пользователь с user_id={user_id} не найден в базе данных.")
|
||||
return None
|
||||
except sqlite3.Error as error:
|
||||
self.logger.error(f"Ошибка при получении username из базы данных: {error}")
|
||||
raise
|
||||
finally:
|
||||
self.close()
|
||||
|
||||
def get_all_user_id(self):
|
||||
"""
|
||||
Возвращает список всех user_id из базы данных.
|
||||
|
||||
Reference in New Issue
Block a user