diff --git a/app/telegram/Keyboards/inline_keyboards.py b/app/telegram/Keyboards/inline_keyboards.py index 5ca4fd6..e9c034d 100644 --- a/app/telegram/Keyboards/inline_keyboards.py +++ b/app/telegram/Keyboards/inline_keyboards.py @@ -9,7 +9,7 @@ settings_markup = InlineKeyboardMarkup(inline_keyboard=[ [InlineKeyboardButton(text="Запуск", callback_data='clb_start_trading')] ]) -back_btn_profile = [InlineKeyboardButton(text="Назад", callback_data='callback_profile')] +back_btn_profile = [InlineKeyboardButton(text="Назад", callback_data='clb_start_chatbot_message')] special_settings_markup = InlineKeyboardMarkup(inline_keyboard=[ [InlineKeyboardButton(text="Основные настройки", callback_data='clb_change_main_settings'), diff --git a/app/telegram/database/models.py b/app/telegram/database/models.py index a6d28ce..69da607 100644 --- a/app/telegram/database/models.py +++ b/app/telegram/database/models.py @@ -84,7 +84,7 @@ class User_Risk_Management_Settings(Base): price_profit = mapped_column(Integer(), default=1) price_loss = mapped_column(Integer(), default=1) - max_risk_deal = mapped_column(Integer(), default=1) + max_risk_deal = mapped_column(Integer(), default=100) class User_Condition_Settings(Base): __tablename__ = 'user_condition_settings' diff --git a/app/telegram/functions/functions.py b/app/telegram/functions/functions.py index 1a7d761..28e9134 100644 --- a/app/telegram/functions/functions.py +++ b/app/telegram/functions/functions.py @@ -12,14 +12,7 @@ async def start_message(message): username = f'{message.from_user.first_name} {message.from_user.last_name}' await message.answer(f""" Привет {username}! 👋 -Добро пожаловать в чат-робот по трейдингу на Bybit — вашего надежного помощника для анализа рынка и принятия взвешенных решений. -Здесь вы получите: - -📊 Анализ текущих трендов -📈 Инструменты для прогнозирования и оценки рисков -⚡️ Сигналы и рекомендации по сделкам -🔔 Уведомления о важных изменениях и новостях - +Добро пожаловать в чат-робот для автоматизации трейдинга — вашего надежного помощника для анализа рынка и принятия взвешенных решений. """, parse_mode='html', reply_markup=inline_markup.start_markup) async def profile_message(username, message): @@ -30,8 +23,8 @@ async def profile_message(username, message): """, parse_mode='html', reply_markup=inline_markup.settings_markup) -async def check_profile_message(message): - await message.answer(f'Добро пожаловать {message.from_user.first_name} {message.from_user.last_name}!', reply_markup=reply_markup.base_buttons_markup) +async def check_profile_message(message, username): + await message.answer(f'С возвращением, {username}!', reply_markup=reply_markup.base_buttons_markup) async def settings_message(message): await message.edit_text("Выберите что настроить", reply_markup=inline_markup.special_settings_markup) \ No newline at end of file diff --git a/app/telegram/functions/risk_management_settings/settings.py b/app/telegram/functions/risk_management_settings/settings.py index 7d1268c..40b533c 100644 --- a/app/telegram/functions/risk_management_settings/settings.py +++ b/app/telegram/functions/risk_management_settings/settings.py @@ -25,9 +25,9 @@ async def main_settings_message(id, message, state): text = f"""Риск менеджмент, -- Процент изменения цены для фиксации прибыли: {data['price_profit']} -- Процент изменения цены для фиксации убытков: {data['price_loss']} -- Максимальный риск на сделку (в % от баланса): {data['max_risk_deal']} +- Процент изменения цены для фиксации прибыли: {data['price_profit']}% +- Процент изменения цены для фиксации убытков: {data['price_loss']}% +- Максимальный риск на сделку (в % от баланса): {data['max_risk_deal']}% """ await message.answer(text=text, parse_mode='html', reply_markup=inline_markup.risk_management_settings_markup) diff --git a/app/telegram/handlers/handlers.py b/app/telegram/handlers/handlers.py index b56cd4e..8ea7fa3 100644 --- a/app/telegram/handlers/handlers.py +++ b/app/telegram/handlers/handlers.py @@ -20,7 +20,6 @@ router = Router() @router.message(CommandStart()) async def start_message(message: Message): await rq.set_new_user_bybit_api(message.from_user.id) - await func.start_message(message) @router.message(F.text == "👤 Профиль") @@ -38,12 +37,19 @@ async def settings_msg(message: Message): await func.settings_message(message) @router.callback_query(F.data == "clb_start_chatbot_message") -async def clb_func_reg (callback: CallbackQuery): +async def clb_profile_msg (callback: CallbackQuery): user = await rq.check_user(callback.from_user.id) - if user: - await callback.message.answer(f'С возвращением, {callback.from_user.username}!', reply_markup=reply_markup.base_buttons_markup) - + username = '' + + if callback.from_user.first_name == None: + username = callback.from_user.last_name + elif callback.from_user.last_name == None: + username = callback.from_user.first_name + else: + username = f'{callback.from_user.first_name} {callback.from_user.last_name}' + + if user: await func.profile_message(callback.from_user.username, callback.message) else: await rq.save_tg_id_new_user(callback.from_user.id) @@ -53,18 +59,9 @@ async def clb_func_reg (callback: CallbackQuery): await func_condition_settings.reg_new_user_default_condition_settings(callback.from_user.id, callback.message) await func_additional_settings.reg_new_user_default_additional_settings(callback.from_user.id, callback.message) - await callback.message.answer(f'Регистрация прошла успешно, перейдите в профиль нажав на кнопку!', reply_markup=reply_markup.base_buttons_markup) + await callback.message.answer(f'Здравствуйте, {username}!', reply_markup=reply_markup.base_buttons_markup) - await func.profile_message(callback.from_user.username, callback.message) - - await callback.answer() - -@router.callback_query(F.data == "callback_profile") -async def clb_profile_message (callback: CallbackQuery): - user = await rq.check_user(callback.from_user.id) - - if user: - await func.profile_message(callback.from_user.username, callback.message) + await func.profile_message(username, callback.message) await callback.answer()