Теперь 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

@@ -5,10 +5,10 @@ class SQLQueries:
SELECT_USER_BY_TG_ID = "SELECT * FROM users WHERE telegram_id = %s"
INSERT_USER = """
INSERT INTO users
(id, phone, telegram_id, firstname, lastname, username,
profileoptions, options, accountstatus, updatetime, lastseen)
VALUES (%s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s)
INSERT INTO users
(phone, telegram_id, firstname, lastname, username,
profileoptions, options, accountstatus, updatetime, lastseen)
VALUES (%s, %s, %s, %s, %s, %s, %s, %s, %s, %s)
"""
INSERT_USER_DATA = """

View File

@@ -1,6 +1,4 @@
import hashlib
import json
import random
import time
@@ -367,14 +365,12 @@ class Tools:
row = await cursor.fetchone() or {}
last_message_id = row.get("id") or 0 # последнее id сообщения в чате
message_id = self.generate_id()
message_time = int(time.time() * 1000) # время отправки сообщения
# Вносим новое сообщение в таблицу
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,
senderId,
message_time,
@@ -386,6 +382,8 @@ class Tools:
),
)
message_id = cursor.lastrowid
# Возвращаем айдишки
return int(message_id), int(last_message_id), message_time
@@ -490,20 +488,6 @@ class Tools:
if userPhone:
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):
"""Функция для обновления юзер конфига из бд в случае его изменения"""

View File

@@ -399,12 +399,11 @@ class AuthProcessors(BaseProcessor):
await cursor.execute(
"""
INSERT INTO users
(id, phone, telegram_id, firstname, lastname, username,
(phone, telegram_id, firstname, lastname, username,
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,
None,
first_name,

View File

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

View File

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