forked from kodorvan/stcs
Added new request
This commit is contained in:
@@ -158,6 +158,8 @@ class User_Main_Settings(Base):
|
|||||||
|
|
||||||
trading_mode = mapped_column(ForeignKey("trading_modes.mode"))
|
trading_mode = mapped_column(ForeignKey("trading_modes.mode"))
|
||||||
margin_type = mapped_column(ForeignKey("margin_types.type"))
|
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)
|
size_leverage = mapped_column(Integer(), default=1)
|
||||||
starting_quantity = mapped_column(Integer(), default=1)
|
starting_quantity = mapped_column(Integer(), default=1)
|
||||||
martingale_factor = 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"))
|
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_time = mapped_column(String(25), default='???')
|
||||||
filter_volatility = mapped_column(Boolean, default=False)
|
filter_volatility = mapped_column(Boolean, default=False)
|
||||||
external_cues = mapped_column(Boolean, default=False)
|
external_cues = mapped_column(Boolean, default=False)
|
||||||
@@ -309,7 +311,7 @@ async def async_main():
|
|||||||
logger.info("Заполение таблицы типов маржи")
|
logger.info("Заполение таблицы типов маржи")
|
||||||
await conn.execute(Margin_type.__table__.insert().values(type=type))
|
await conn.execute(Margin_type.__table__.insert().values(type=type))
|
||||||
|
|
||||||
triggers = ['Ручной', 'Автоматический', 'TradingView']
|
triggers = ['Ручной', 'Автоматический']
|
||||||
for trigger in triggers:
|
for trigger in triggers:
|
||||||
result = await conn.execute(select(Trigger).where(Trigger.trigger == trigger))
|
result = await conn.execute(select(Trigger).where(Trigger.trigger == trigger))
|
||||||
if not result.first():
|
if not result.first():
|
||||||
|
@@ -291,10 +291,10 @@ async def get_for_registration_margin_type():
|
|||||||
return type
|
return type
|
||||||
|
|
||||||
|
|
||||||
async def get_for_registration_trigger():
|
async def get_for_registration_trigger(tg_id):
|
||||||
"""Получить триггер по умолчанию."""
|
"""Получить триггер по умолчанию."""
|
||||||
async with async_session() as session:
|
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
|
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))
|
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))
|
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))
|
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))
|
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))
|
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 = {
|
data = {
|
||||||
'trading_mode': trading_mode,
|
'trading_mode': trading_mode,
|
||||||
'margin_type': margin_mode,
|
'margin_type': margin_mode,
|
||||||
|
'switch_mode_enabled': switch_mode_enabled,
|
||||||
|
'switch_state': switch_state,
|
||||||
'size_leverage': size_leverage,
|
'size_leverage': size_leverage,
|
||||||
'starting_quantity': starting_quantity,
|
'starting_quantity': starting_quantity,
|
||||||
'martingale_factor': martingale_factor,
|
'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.execute(update(UMS).where(UMS.tg_id == tg_id).values(martingale_step=step))
|
||||||
|
|
||||||
await session.commit()
|
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()
|
Reference in New Issue
Block a user