1
0
forked from kodorvan/stcs

Added new request

This commit is contained in:
algizn97
2025-08-29 11:42:03 +05:00
parent 4f774160b3
commit f09fe1d70b
2 changed files with 34 additions and 4 deletions

View File

@@ -158,6 +158,8 @@ class User_Main_Settings(Base):
trading_mode = mapped_column(ForeignKey("trading_modes.mode"))
margin_type = mapped_column(ForeignKey("margin_types.type"))
switch_mode_enabled = mapped_column(String(15), default="Выключен")
switch_state = mapped_column(String(10), default='Long')
size_leverage = mapped_column(Integer(), default=1)
starting_quantity = mapped_column(Integer(), default=1)
martingale_factor = mapped_column(Integer(), default=1)
@@ -212,7 +214,7 @@ class User_Condition_Settings(Base):
tg_id = mapped_column(ForeignKey("user_telegram_id.tg_id"))
trigger = mapped_column(ForeignKey("triggers.trigger"))
trigger = mapped_column(String(15), default='Ручной')
filter_time = mapped_column(String(25), default='???')
filter_volatility = mapped_column(Boolean, default=False)
external_cues = mapped_column(Boolean, default=False)
@@ -309,7 +311,7 @@ async def async_main():
logger.info("Заполение таблицы типов маржи")
await conn.execute(Margin_type.__table__.insert().values(type=type))
triggers = ['Ручной', 'Автоматический', 'TradingView']
triggers = ['Ручной', 'Автоматический']
for trigger in triggers:
result = await conn.execute(select(Trigger).where(Trigger.trigger == trigger))
if not result.first():

View File

@@ -291,10 +291,10 @@ async def get_for_registration_margin_type():
return type
async def get_for_registration_trigger():
async def get_for_registration_trigger(tg_id):
"""Получить триггер по умолчанию."""
async with async_session() as session:
trigger = await session.scalar(select(Trigger.trigger).where(Trigger.id == 1))
trigger = await session.scalar(select(UCS.trigger).where(tg_id == tg_id))
return trigger
@@ -308,6 +308,8 @@ async def get_user_main_settings(tg_id):
trading_mode = await session.scalar(select(UMS.trading_mode).where(UMS.tg_id == tg_id))
margin_mode = await session.scalar(select(UMS.margin_type).where(UMS.tg_id == tg_id))
switch_mode_enabled = await session.scalar(select(UMS.switch_mode_enabled).where(UMS.tg_id == tg_id))
switch_state = await session.scalar(select(UMS.switch_state).where(UMS.tg_id == tg_id))
size_leverage = await session.scalar(select(UMS.size_leverage).where(UMS.tg_id == tg_id))
starting_quantity = await session.scalar(select(UMS.starting_quantity).where(UMS.tg_id == tg_id))
martingale_factor = await session.scalar(select(UMS.martingale_factor).where(UMS.tg_id == tg_id))
@@ -319,6 +321,8 @@ async def get_user_main_settings(tg_id):
data = {
'trading_mode': trading_mode,
'margin_type': margin_mode,
'switch_mode_enabled': switch_mode_enabled,
'switch_state': switch_state,
'size_leverage': size_leverage,
'starting_quantity': starting_quantity,
'martingale_factor': martingale_factor,
@@ -547,3 +551,27 @@ async def update_martingale_step(tg_id, step):
await session.execute(update(UMS).where(UMS.tg_id == tg_id).values(martingale_step=step))
await session.commit()
async def update_switch_mode_enabled(tg_id, switch_mode):
"""Обновить режим переключения пользователя."""
async with async_session() as session:
await session.execute(update(UMS).where(UMS.tg_id == tg_id).values(switch_mode_enabled=switch_mode))
await session.commit()
async def update_switch_state(tg_id, switch_state):
"""Обновить состояние переключения пользователя."""
async with async_session() as session:
await session.execute(update(UMS).where(UMS.tg_id == tg_id).values(switch_state=switch_state))
await session.commit()
async def update_trigger(tg_id, trigger):
"""Обновить триггер пользователя."""
async with async_session() as session:
await session.execute(update(UCS).where(UCS.tg_id == tg_id).values(trigger=trigger))
await session.commit()