From f7f6fa5482cc988ed36689e79ddde3eac34e89c4 Mon Sep 17 00:00:00 2001 From: KatykhinAA Date: Mon, 15 Jul 2024 22:28:36 +0300 Subject: [PATCH] some fix --- database/db.py | 57 ++++++++++++++++++ .../callback/__pycache__/main.cpython-312.pyc | Bin 15076 -> 15197 bytes helper_bot/handlers/callback/main.py | 5 +- .../private/__pycache__/main.cpython-312.pyc | Bin 23098 -> 23916 bytes helper_bot/handlers/private/main.py | 22 ++++--- .../__pycache__/helper_func.cpython-312.pyc | Bin 8650 -> 9186 bytes helper_bot/utils/helper_func.py | 6 +- 7 files changed, 79 insertions(+), 11 deletions(-) diff --git a/database/db.py b/database/db.py index 4c63f2d..f614b15 100644 --- a/database/db.py +++ b/database/db.py @@ -562,6 +562,62 @@ class BotDB: finally: self.close() + def get_username_and_full_name(self, user_id: int): + """ + Получает full_name и username пользователя по ID из базы + + Args: + date (str): Новая дата изменения. + user_id (int): Идентификатор пользователя в Telegram. + + Returns: + username (str): username пользователя + full_name (str): full_name пользователя + """ + self.logger.info( + f"Запуск функции check_username_and_first_name: user_id={user_id}") + try: + self.connect() + self.cursor.execute("SELECT username FROM our_users WHERE user_id = ?", (user_id,)) + username = self.cursor.fetchone()[0] + self.cursor.execute("SELECT full_name FROM our_users WHERE user_id = ?", (user_id,)) + full_name = self.cursor.fetchone()[0] + self.logger.info( + f"Функция check_username_and_first_name успешно отработала: user_id={user_id}, username={username}, full_name={full_name}") + return username, full_name + except sqlite3.Error as error: + self.logger.error(f"Ошибка в функции get_username_and_first_name: {error}") + return None + finally: + self.close() + + def update_username_and_full_name(self, user_id: int, username: str, full_name: str): + """ + Обновляет full_name и username пользователя + + Args: + username (str): username пользователя + full_name (str): full_name пользователя + user_id (int): Идентификатор пользователя в Telegram + + Returns: + True (bool): Если обновления прошли успешно + sqlite3. Error: Если произошла ошибка при выполнении запроса. + """ + self.logger.info( + f"Запуск функции update_username_and_full_name: user_id={user_id}, username={username}, full_name={full_name}") + try: + self.connect() + self.cursor.execute("UPDATE our_users SET username = ?, full_name = ? WHERE user_id = ?", (username, full_name, user_id,)) + self.conn.commit() + self.logger.info(f"Функция update_username_and_full_name. Данные пользователя: user_id={user_id} успешно обновлены") + return True + except sqlite3.Error as error: + self.logger.error(f"Ошибка в функции update_username_and_full_name: {error}") + raise + finally: + self.close() + def update_date_for_user(self, date: str, user_id: int): """ #TODO: Не возвращается ошибка sqlite3. Error. Тест не перехватывает. Возвращается no such table: our_users @@ -785,6 +841,7 @@ class BotDB: return None except sqlite3.Error as error: print(error) + raise finally: self.close() diff --git a/helper_bot/handlers/callback/__pycache__/main.cpython-312.pyc b/helper_bot/handlers/callback/__pycache__/main.cpython-312.pyc index 90d4174f7a94e1ad2dd445713c1764d2d5bcb3ce..16ba3614e65d032d65735bb2deb53d5e83879c5e 100644 GIT binary patch delta 765 zcmX|8T}V@57(VYg-#KU7*3l9>63j{a8@>;qD0V@_fY1<0ys@cqlK9Gn9m>xsF_XvdW ziZ^h;l!!-K{+LX>nvSJLBE@;{G0+0L-_geYV z)$+w_6+sw)+aiU!8C>)~xod-x527+F`AwBLu@io=|PT4h$k z_MlUfxk-63uB@tLMiY_=I1yBghV$RKvHBoR2hYg*2x)v5>{Iw(^#nqw-qS~tjBxSH z|EJzH)J(`QDzspCs9C#7YKoAV5wPNGwAme>?XGRR>s5Hi-Z|HYcS26<#-&i$7U^YBIt9HVD|IWqtoSwL7hx2Q?H)Nxx7{yxw)e}<36cRxZ=;|e<`m$R z!sX82@&d_+#b?J0lAW8c^F?$%t1n=GR}(B1lU+ZdQGqdddG43MFV(KMo ztrwM|!W3GSLhp%(l1mRBOyfyG5JVy3O+hazxj4&cW2oBJo}~G`NrjP zFdErCiB_*+QOljua%ho+~%NaN$~L+HF9qqg={anf#<7tSrX+k`TsB zp8*HzPx=PInWd(zafuv$2!|X6*(9kHMm6%VYjk~h-DoprLWWb=mBm_Q@wN_)Fqm94 zB7>$58$DnOv9YgP`omyqVk4Cx-wc3h6V0GpZyo{DA(~?v`BwrYwQbtA>5yz`<>{+4 z6H^mF_5Te)<}PWgML5NPEwKtN2K@NRaOxGP?(7AIYl$SkZpY1p|G)K{9B)N^PNl-1 zu@yckYAUWqLqa?Ay#wDykMnX0JHz{NC>9;*q5{^K#8C;G#1)B?1Vgb7NuMROZ1P2? z$BVg=LQ`Cc^#*3h%#uo%2;bPBIo7r@xA#&0etsF2`Mu)Y3H%ZBsh;!i#Rc^C54#Vh zW6%gd+7OMPmX6gg_D4A6a6TSVOLWJbdM$od^%cod?S2Z@fP^72g}YO~)p@cDb@xzJ x@yK7ZWDk}+Yt7^9ksesCe;xS=dsQgF>giuh#;p#{d0UgV?ZM5_f>@&ce*sairmp}1 diff --git a/helper_bot/handlers/callback/main.py b/helper_bot/handlers/callback/main.py index 69620db..f049910 100644 --- a/helper_bot/handlers/callback/main.py +++ b/helper_bot/handlers/callback/main.py @@ -106,7 +106,7 @@ async def process_ban_user(call: CallbackQuery, state: FSMContext): date_to_unban=None) markup = create_keyboard_for_ban_reason() await call.message.answer( - text=f"Выбран пользователь: {user_id}. Выбери причину бана из списка или напиши ее в чат", + text=f"Выбран пользователь:\nid: {user_id}\nusername:{user_name}. Выбери причину бана из списка или напиши ее в чат", reply_markup=markup) await state.set_state('BAN_2') else: @@ -120,8 +120,9 @@ async def process_ban_user(call: CallbackQuery, state: FSMContext): ) async def process_unlock_user(call: CallbackQuery): user_id = call.data[7:] + user_name = BotDB.get_username(user_id=user_id) delete_user_blacklist(user_id) - logger.info(f"Разблокирован пользователь с ID: {user_id}") + logger.info(f"Разблокирован пользователь с ID: {user_id}\nusername:{user_name}") username = BotDB.get_username(user_id) await call.answer(f'Пользователь разблокирован {username}', show_alert=True) diff --git a/helper_bot/handlers/private/__pycache__/main.cpython-312.pyc b/helper_bot/handlers/private/__pycache__/main.cpython-312.pyc index 741a33dabbc2b82fbabafde15afc8618b24a447c..e8705518b88f28b712e78c509894caed0d96a6f3 100644 GIT binary patch delta 4939 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 delta 4089 zcmb7Hdr+L!760yjkKJY2UDziqB;Z1T(!1OOW~Y#8+>++rl;mz;-0jpmpRzIIxQ_<5pHvE^B#U?RNxB?q%ww6ikpaO$ z9_2k^Gdp)p+>(-gl#`;xt&mc8ZYEB%)}D@GY8M3N&bSdOTqD~JvH~fr4;#W+VPn`7HiymU3`t%3 z3hkuo*1{6Xl+u++nYX7+Yi(&NOIEwpmR4V|(o_$^ zt$J(NLT7=F{LPeCe?Pa4`;qR%{S3z`q7xTNIITEszm&uC3&LvBNo>F&C?;(a>GwHu zPG=sTy<{1T9ONU9=h)4aX$wj=JM2Vea;Rb>O`3u1tQ3)joUbZvqE}Za+=B3sFpuWB zBm4nw9x+!6w{a()Sm(&k);q#0j!gUmjSgOMvMtoLM9aXH_A>JX|EHG%k-ayOSe3`@ z?mdeV`tf`HnjBCf7wvfnwUd)BFS+h;T5F4=&%_p^uSH*qUWlG=A}3sBdv2JsvWBpK zTpja|-`A9NR)_0oLK1?e9?|9=qh$0<^kVe&*dwvWqOU~XpvtclM_-Pfr{o*4AH*Jo z&FisK#O2yd23#)hNqWh%RO4dwrP%SbMpN+v#^OQEuc^f~#pHSC`vtzrgnlB3=lxho zSoZAe8}65P_wAFr`}PcyR=3B~1Wp(yaBxPR3#pirbJNrEtbax&vU^({7MZ-`$hdk) z3j}8qqKa`4C-{&?VJxU6vP0^uBG0IykbhDozi?Mn8z)sw4uKO1T|h}>O$2aAV!w^Ud6r~Tt#`f8U#Pg^VKHI<8v6RvuVS6FhDbp zhv8TUzzD#8fIG-<^L}1EMadfa8~T#xxDU85ALdqURbwV431WuxNa%K$nohx4~*|7e42a zahLE{TYlVD60?=WZDlcA*`j{gSr~Vg#hhhvXG6@{u$Z;%D2O{Y#T=XBj=GqmZqc}$ zn-|aZ#&W&!Twg5LwTK(vyW#--J|c`c`z#9bM;PtbaX809DmoKkPBVA$%cA^MTC<#R=$q}`<=iC+ zb$f+N`rSslxtxQ#Hwl+>1)!Z^>aq*bqnGm;7BVa{b{FxND_YCCJ^Yddb>~V;R*}-T zFF7QtvE&h{e5r^B+KZ^ArA-XWjeT~0slLtLXW_5#s85ov2qMr%ksiHb5vll!9n^4r z#9j1#9@Ua(yuGM_eB>QOTS;q)qp1Z7Ya75V6nuI3HlTL`v;qtQz!1hT?lH6#-UZM> zo-C>BJP4!%Kn8%W!Z5sXFF+qaKR^$_0Kh&9KK*JN;Bnwi5_hTBH%7^joI2oX?QkpSj8d#v|NcdlkVz=yqTErb}(XU zJJ2EbbPNu*?&-iR=z8*Dwg2d9Xe_EBFv;3(H&6n=9)P_7odDSYT>vc5ZlG9r>q5>% zi{XO+e+R$@ur_BobPsvXWQ4p|Qzk(kXi5yV8{8}drZuAoKS+i1k>=WCJerRDrlBCK zjOBq1JjdX0dpiwM9_;AdwLV;3^VP1eX2rK@&C`B0{zUe8a8`rCq}_i=W$&I4r-O8c zVJCREpA@x}cwoSNJt&BY+|}YmN6FC^-_}fC5(4~PNv7?as=~UaD#GMiix1Hp>=-V6 z1a3J7zzW1lsZ@ca7aSnp-Qf_Qq>`s1KiTo5(F{59A*_H_Eot6+i2X&tJ78ZAuqG4a zcY9mP4ugW@Tl0Y}pj1G7oyA92TZ9!o>y!Uo^cX6|C#;Ea5=^p?pw1wcWWgIkT44M> zTF&?>%8%3E&};M`8aC@c&*CD#@7yKOCN}q057$y*!qC63LvG*OI^@g#cK^Rtdi3tq zKv)g(Dc{J+-hz#+@NBdQX4P>`o)2jE%6?@gFpJO7D?g09-76tLXB0VBfHw@yGeKo;THS%)qC9xT&?WNJfo7@k3l5>i$lnh%p{feBfSwm$G@muE la6rE{^(k9FGx9negOwcMuZ$q_;$3x-!*_m)giF-ce*rWt<-`C0 diff --git a/helper_bot/handlers/private/main.py b/helper_bot/handlers/private/main.py index 46ff613..8735e44 100644 --- a/helper_bot/handlers/private/main.py +++ b/helper_bot/handlers/private/main.py @@ -16,7 +16,7 @@ from helper_bot.middlewares.text_middleware import AlbumMiddleware from helper_bot.utils import messages from helper_bot.utils.base_dependency_factory import BaseDependencyFactory from helper_bot.utils.helper_func import get_first_name, get_text_message, send_text_message, send_photo_message, \ - process_photo_album, send_media_group_message + process_photo_album, send_media_group_message, check_username_and_full_name from logs.custom_logger import Logger from database.db import BotDB @@ -52,7 +52,16 @@ BotDB = BotDB('database/tg-bot-database') ) async def handle_start_message(message: types.Message, state: FSMContext): try: + user_id = message.from_user.id + full_name = message.from_user.full_name + username = message.from_user.username await message.forward(chat_id=GROUP_FOR_LOGS) + is_need_update = check_username_and_full_name(user_id, username, full_name) + if is_need_update: + BotDB.update_username_and_full_name(user_id, username, full_name) + await message.answer(f"Давно не виделись! Вижу что ты изменился;) Теперь буду звать тебя: {full_name} и ник @{username}") + await message.bot.send_message(chat_id=GROUP_FOR_LOGS, text=f'Для пользователя: {user_id} обновлены данные в БД.\nНовое имя: {full_name}\nНовый ник:{username}') + sleep(2) await state.set_state("START") logger.info( f"Формирование приветственного сообщения для пользователя. Сообщение: {message.text} " @@ -64,18 +73,15 @@ async def handle_start_message(message: types.Message, state: FSMContext): await message.answer_sticker(random_stick_hello) sleep(0.3) except Exception as e: - logger.error(f"Произошла ошибка handle_start_message. Ошибка:{str(e)}") + logger.error(f"Произошла ошибка handle_start_message при получении стикеров. Ошибка:{str(e)}") await message.bot.send_message(chat_id=IMPORTANT_LOGS, - text=f"Произошла ошибка: {str(e)}\n\nTraceback:\n{traceback.format_exc()}") + text=f"Произошла ошибка при получении стикеров: {str(e)}\n\nTraceback:\n{traceback.format_exc()}") try: - current_state = await state.get_state() - logger.info( - f"Получение данных для приветственного сообщения пользователю. Сообщение: {message.text} Имя автора сообщения: {message.from_user.full_name} State - {current_state}") user_id = message.from_user.id - first_name = message.from_user.first_name full_name = message.from_user.full_name - is_bot = message.from_user.is_bot username = message.from_user.username + first_name = message.from_user.first_name + is_bot = message.from_user.is_bot language_code = message.from_user.language_code current_date = datetime.now() date = current_date.strftime("%Y-%m-%d %H:%M:%S") diff --git a/helper_bot/utils/__pycache__/helper_func.cpython-312.pyc b/helper_bot/utils/__pycache__/helper_func.cpython-312.pyc index 813227074e4ed6ccc10b84bbbc378015b359408e..f546d11e68f18c190043e8b0bfd9cede4a816b35 100644 GIT binary patch delta 2237 zcmaJCZD?Cn^xfpWCe2HlH0he8NwdtZX=AtPU|ZLZePGuqZk=pZw{^qEOYZBIH6Qi9 zl&vEpLpD(m>~;}~Q`jG&;*e=Tr}%R}hW=@0aq^h>0sA3{4E9Gv!E~p-q&NlJlpn-$K#UVdHL)+(?`0mw1vp^D}6(qHpy^M&|3h`iQ}37en7ti{I##uFRugr|Fdz@PO$OQpy7ddLU3Myh6UaQcn6ILJPPly>ZCDkWX15yxEV6PT}$_5ibsZUocFyg%8;Z<7%ovn>)Q z|J;^RypV#*WA@F&Q#ok2>}oqOm^0OI&C;W04F3Tg1A)pYf2YA(lm zK&PL7=X#C!_;IzOZUmZjAqexJdtkGm(HrXpV7W~rzZy{zSZhz=1$Rst0On}rsyj!@ zXl%)tMAFWLr!B$>GiI~%T25y(bF(1n6HM?-o4KOrWJ}FPoGxm#3ApS@1mfftz(jua z1lxs+)tWh>Xj?&NoWI`o8Hw>--g_b>7C{#=07LT%cY7CHe8@jc$S|J_3;-+#cGjCkr&Oc*ys1GGP`zldXTT=QzYUCljkjaWM#lJL z=j|48@<#qiD8#o1y`C}9vXnW~U?y|&!@w>#lJQ!pCx=4=qDYHUXq*2Oydfv}4L7P;c_~ z@B{>^g?}SGF9Jh&WgURQT?ocYfSY(0b~DdM!pboq-s5jYHbFFBL|$<2tZ6&AFB&Ck2g}u-466 z;{f5G>EP^Bc+FPURw@5T34<9qLvgDdgFRk{1(fraROx%G|b7tSr5x$arYES*?( z4Xwz-$edUlSnOU-?6_IFnO}B|ugLq6+rKbVb#1uo+H*Z~bF`Y+vm)>P-WyyTsd^L3 zYT~ZCZ)xb3yE?FMS>7iaB3=L4K?IV7CBZJJoR1oWjPjqlk4K*aI_YA_X1fr)f?ziS z2R|C?Z|OtyX?{7j{@5NsEu~n1S+%@#`Bb)$o@or3SlXhJRx8#+l)%IjVOsF1t?@Q6 z)AL%sP|Qqc493oY!k7H7*t=eA-z2dlrXmvMAFSV8R$&|HDcv--&{XY09TTrC8LkYjP0=4g*z#~CF^0~=~@ca)a7#DK@ delta 1702 zcmaJ>OK4nW6u$q=y)$0SsR$Zh)sHKgI%gp@$G}B}r zo_hxkDk+kUZc6*R2#TP%5*J+zl%j$gSL&kBMd3n_id_gUDk5lCp7T$eM5JE0=brcZ z&iT*%e}3uvrPvRBePIosmDq>1UF%9L!*;G5KDxy$VHOj*x!Xx-bQ5WESsO#g0cnl>Uk8c~RF`f|dM`qeeii9w- zm>q-rF*wP`AL&e`1`yJrgJ60*Mh{}K)c-^eVf248)b>-=OrFLR13V+*h&_v726;~L z7V<+pulQl))4Z^)t!DTLc2*QwoJSl1jG`s?AbJdWi$8{5`OQ>mLjK6+^VS97+928+ zoA$ccthCC&?OF@$cFS?4?)#X9=X zlDXn7*KP>MDPItfMs-5I8obPs-8;dmk6H3$_?htxc}Lo7Ew_cPyk7QL9YUyd3?xN* zATB=(XAK%_Nq!rCk0s@ck#1xhWw40ku12S3lt_Uvfy9eCqPbuEaa8>);kjtRm`3IC z?%UA@+oE7kC%h#;s7z0&B)xGo%CO#Pqh(SlF*Dz5i!zr2y%<$pjbjG2FhxXF4j`vm z!CsK{k}Adicubtn(`Yy)Te0hGL{7wSD@c&16eCDVdauNu0-hwTuLmit@~I(~j00FG z67~Q&28s$s4@Lie)LuJB(B&MyPWPR}99uDw^~}0smwBV!{DQ$8+2{{^&`GqqCaUXp zxmv|zhGS@0BabAKOWH4y#O1~J7k3Wdij3XV#~|5d{l^%amkX&Wq-&{X86ItF$XG)6 zhWsWqkGt_#YRSh=$c3Trm?>F$dh`SuJ)`3YaMWUWy5e~wlg);b%{7Pu?>{KfmTFXkg*%aJXS?n6L8aA&$q35-XAI~I{UFQy*M$z#j=@q)2 zDHvx^`as^#EF;#Jv%j$yUPFbd1cS)oktoGk%NxafKyB@u^omwa0gZK{ukHB}sHbn#(KIcKW7#eGBY+lC?G@0H039>X5qLVUS6wy0-b4tdIsqV< zYUcONg+_~aHpC*lfjU|QXA0>(KV$4CZSt;`-PKBWwS`@6_>S3kGd6k4EL}401sI#$ RIr;flV=VlK8D;Y-<3H2?dHw(Z diff --git a/helper_bot/utils/helper_func.py b/helper_bot/utils/helper_func.py index deeacfc..fff1e67 100644 --- a/helper_bot/utils/helper_func.py +++ b/helper_bot/utils/helper_func.py @@ -3,7 +3,6 @@ from datetime import datetime, timedelta from aiogram import types from aiogram.types import InputMediaPhoto -from helper_bot.keyboards import get_reply_keyboard_for_post from database.db import BotDB BotDB = BotDB('database/tg-bot-database') @@ -176,6 +175,11 @@ def delete_user_blacklist(user_id: int): return BotDB.delete_user_blacklist(user_id=user_id) +def check_username_and_full_name(user_id: int, username: str, full_name: str): + username_db, full_name_db = BotDB.get_username_and_full_name(user_id=user_id) + return not username == username_db and full_name == full_name_db + + def unban_notifier(self): # Получение сегодняшней даты в формате DD-MM-YYYY current_date = datetime.now()