Теперь ID пользователей идут по порядку, как и раньше

This commit is contained in:
Alexey Polyakov
2026-04-25 12:10:44 +03:00
parent cd9ba981ae
commit cb058f6ab6
5 changed files with 11 additions and 29 deletions

View File

@@ -6,9 +6,9 @@ class SQLQueries:
INSERT_USER = """ INSERT_USER = """
INSERT INTO users INSERT INTO users
(id, phone, telegram_id, firstname, lastname, username, (phone, telegram_id, firstname, lastname, username,
profileoptions, options, accountstatus, updatetime, lastseen) profileoptions, options, accountstatus, updatetime, lastseen)
VALUES (%s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s) VALUES (%s, %s, %s, %s, %s, %s, %s, %s, %s, %s)
""" """
INSERT_USER_DATA = """ INSERT_USER_DATA = """

View File

@@ -1,6 +1,4 @@
import hashlib
import json import json
import random
import time import time
@@ -367,14 +365,12 @@ class Tools:
row = await cursor.fetchone() or {} row = await cursor.fetchone() or {}
last_message_id = row.get("id") or 0 # последнее id сообщения в чате last_message_id = row.get("id") or 0 # последнее id сообщения в чате
message_id = self.generate_id()
message_time = int(time.time() * 1000) # время отправки сообщения message_time = int(time.time() * 1000) # время отправки сообщения
# Вносим новое сообщение в таблицу # Вносим новое сообщение в таблицу
await cursor.execute( await cursor.execute(
"INSERT INTO `messages` (id, chat_id, sender, time, text, attaches, cid, elements, type) VALUES (%s, %s, %s, %s, %s, %s, %s, %s, %s)", "INSERT INTO `messages` (chat_id, sender, time, text, attaches, cid, elements, type) VALUES (%s, %s, %s, %s, %s, %s, %s, %s)",
( (
message_id,
chatId, chatId,
senderId, senderId,
message_time, message_time,
@@ -386,6 +382,8 @@ class Tools:
), ),
) )
message_id = cursor.lastrowid
# Возвращаем айдишки # Возвращаем айдишки
return int(message_id), int(last_message_id), message_time return int(message_id), int(last_message_id), message_time
@@ -490,20 +488,6 @@ class Tools:
if userPhone: if userPhone:
await coro(*args) await coro(*args)
def generate_id(self):
# Получаем время в юниксе
timestamp = int(time.time())
# Генерируем дополнительно рандомное число
random_number = random.randint(0, 9999)
# Собираем их вместе и вычисляем хеш
combined = f"{timestamp}{random_number}".encode()
unique_id = int(hashlib.md5(combined).hexdigest(), 16) % 1000000000
# Возвращаем
return unique_id
async def update_user_config(self, cursor, phone, user_settings, default_settings): async def update_user_config(self, cursor, phone, user_settings, default_settings):
"""Функция для обновления юзер конфига из бд в случае его изменения""" """Функция для обновления юзер конфига из бд в случае его изменения"""

View File

@@ -399,12 +399,11 @@ class AuthProcessors(BaseProcessor):
await cursor.execute( await cursor.execute(
""" """
INSERT INTO users INSERT INTO users
(id, phone, telegram_id, firstname, lastname, username, (phone, telegram_id, firstname, lastname, username,
profileoptions, options, accountstatus, updatetime, lastseen) profileoptions, options, accountstatus, updatetime, lastseen)
VALUES (%s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s) VALUES (%s, %s, %s, %s, %s, %s, %s, %s, %s, %s)
""", """,
( (
self.tools.generate_id(),
phone, phone,
None, None,
first_name, first_name,

View File

@@ -86,7 +86,6 @@ class TelegramBot:
await cursor.execute( await cursor.execute(
self.sql_queries.INSERT_USER, self.sql_queries.INSERT_USER,
( (
self.tools.generate_id(),
new_phone, # phone new_phone, # phone
tg_id, # telegram_id tg_id, # telegram_id
message.from_user.first_name[:59], # firstname message.from_user.first_name[:59], # firstname

View File

@@ -1,5 +1,5 @@
CREATE TABLE `users` ( CREATE TABLE `users` (
`id` INT NOT NULL, `id` INT NOT NULL AUTO_INCREMENT,
`phone` VARCHAR(20) UNIQUE, `phone` VARCHAR(20) UNIQUE,
`telegram_id` VARCHAR(64) UNIQUE, `telegram_id` VARCHAR(64) UNIQUE,
`firstname` VARCHAR(59) NOT NULL, `firstname` VARCHAR(59) NOT NULL,
@@ -51,7 +51,7 @@ CREATE TABLE `chats` (
); );
CREATE TABLE `messages` ( CREATE TABLE `messages` (
`id` INT NOT NULL, `id` INT NOT NULL AUTO_INCREMENT,
`chat_id` INT NOT NULL, `chat_id` INT NOT NULL,
`sender` INT NOT NULL, `sender` INT NOT NULL,
`time` VARCHAR(32) NOT NULL, `time` VARCHAR(32) NOT NULL,