From 52779d20ab03dd2a545573eb03927fab0c7e45c0 Mon Sep 17 00:00:00 2001 From: Artyom Ashirov <1323ED5@gmail.com> Date: Thu, 14 Nov 2024 18:24:04 +0300 Subject: [PATCH] Nickname added --- db/shop.db | Bin 61440 -> 0 bytes src/config/database.js | 1 + src/handlers/adminUserHandler.js | 3 +-- src/handlers/userHandler.js | 3 ++- src/models/User.js | 6 +++--- 5 files changed, 7 insertions(+), 6 deletions(-) delete mode 100644 db/shop.db diff --git a/db/shop.db b/db/shop.db deleted file mode 100644 index 672dbc4aa653342d67f1ac8310457474ed1afe67..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 61440 zcmeI)PjAy^9KdnAvy}B$A04H^ZPx2EF<i#pR{j3&-dF(%voHomJ7tmY+B)bz^;9f3pR#y)McIBp6Kki+r?P}`^XbL^9OnSy)q~CwkZi(&AnFh zo>^44-`Re=Z%$XVDU!QxOj_FbYPDwUtm~RTaJ`q&^S(?a%O1r+x^F3%)|Rrnc5-mB zZd|*jzy3K5P;pbm)+Hr0#qqi0(hp=MelYmFahbXcB`(?V=s$)fJ72cuR9J3Zsu>Ti zm4&5%w6==vm6P=gb>r$){q>bJAX)8EzOk%?BR@QMG@M{Gh{NO3F5t(dWv(B^q3^_{ z*Ur~{vV0%k*rssgEo_SH%kr$>TCN%9)iT~3#@fm^FTTEgKE?gz%M^Dw3Y|kc@}hj> zf`XeLo*Q=*dEwblTc>kXExZ0 z*7s)Xq1ebzxGQcpim@jSV!Lk*Wt2TRcs1MkAemh^eS&&vrf0cw44r@coDeE~G&wf2 ze=4JJ!K_p?Ib2d#Hom@X*XzcWEBdd`#%VJSS(IITUQL=w>D)P!rR&)#F&Q#uOm4+s zKjXx+WsEd4BhU`27@Jj)X`n{RJs z8TbCFckd`UJ3I{Hz#4`9Q@3>JyRJ8|W)wR?5W4N&}k}Lb8fp-)Pe5b6! z&k(PoHIs$VB;K21Dmn92&^JppW4BSZ3Q|KS7n(|#Ymd&=j2k!fgES!~4-S#{d?bCm zQ@e{wN}MX(NT!cXd1d27*XxF1=&!~}mQK{^uLb4$^w8Xy6nlN|X=ooMGi3VYHir5@ zK1?re3)f^pd1`FWR+py^e^mIhj@DSH8F!4bkfcqww$eZ6zs1(uVB@%&%a@X{^>5I_I{1Q0*~0R#|0009J20p9{00IagfB*srAb%xriBO~fB*srAb0sjBL z>c^NCB7gt_2q1s}0tg_000Iag!25r4009ILKmY**5I_I{1Q0*~f$9tJ{=fP$riBO~ zfB*srAb { CREATE TABLE IF NOT EXISTS users ( id INTEGER PRIMARY KEY AUTOINCREMENT, telegram_id TEXT UNIQUE NOT NULL, + username TEXT, country TEXT, city TEXT, district TEXT, diff --git a/src/handlers/adminUserHandler.js b/src/handlers/adminUserHandler.js index 7afd89d..31ce1e2 100644 --- a/src/handlers/adminUserHandler.js +++ b/src/handlers/adminUserHandler.js @@ -31,7 +31,6 @@ export default class AdminUserHandler { GROUP BY u.id ORDER BY u.created_at DESC `); - if (users.length === 0) { await this.bot.sendMessage(msg.chat.id, 'No users registered yet.'); return; @@ -54,7 +53,7 @@ export default class AdminUserHandler { // Create inline keyboard with user list const keyboard = { inline_keyboard: users.map(user => [{ - text: `ID: ${user.telegram_id} | Balance: $${user.total_balance || 0}`, + text: `ID: ${user.telegram_id} | Nickname: ${user.username? "@" + user.username: "None"} | Balance: $${user.total_balance || 0}`, callback_data: `view_user_${user.telegram_id}` }]) }; diff --git a/src/handlers/userHandler.js b/src/handlers/userHandler.js index 854eb10..6aa4b49 100644 --- a/src/handlers/userHandler.js +++ b/src/handlers/userHandler.js @@ -57,10 +57,11 @@ export default class UserHandler { async handleStart(msg) { const chatId = msg.chat.id; const userId = msg.from.id; + const username = msg.chat.username; try { // Create user profile - await User.create(userId); + await User.create(userId, username); const keyboard = { reply_markup: { diff --git a/src/models/User.js b/src/models/User.js index 4783763..9e1de17 100644 --- a/src/models/User.js +++ b/src/models/User.js @@ -1,7 +1,7 @@ import db from '../config/database.js'; export default class User { - static async create(telegramId) { + static async create(telegramId, username) { try { // First check if user exists const existingUser = await this.getById(telegramId); @@ -14,8 +14,8 @@ export default class User { // Create new user const result = await db.runAsync( - 'INSERT INTO users (telegram_id) VALUES (?)', - [telegramId.toString()] + 'INSERT INTO users (telegram_id, username) VALUES (?, ?)', + [telegramId.toString(), username] ); // Commit transaction