develop #3
@@ -1,4 +1,6 @@
|
|||||||
import logging
|
import logging
|
||||||
|
from typing import Any
|
||||||
|
|
||||||
logger = logging.getLogger(__name__)
|
logger = logging.getLogger(__name__)
|
||||||
|
|
||||||
from app.telegram.database.models import async_session
|
from app.telegram.database.models import async_session
|
||||||
@@ -181,11 +183,13 @@ async def get_user_risk_management_settings(tg_id):
|
|||||||
price_profit = await session.scalar(select(URMS.price_profit).where(URMS.tg_id == tg_id))
|
price_profit = await session.scalar(select(URMS.price_profit).where(URMS.tg_id == tg_id))
|
||||||
price_loss = await session.scalar(select(URMS.price_loss).where(URMS.tg_id == tg_id))
|
price_loss = await session.scalar(select(URMS.price_loss).where(URMS.tg_id == tg_id))
|
||||||
max_risk_deal = await session.scalar(select(URMS.max_risk_deal).where(URMS.tg_id == tg_id))
|
max_risk_deal = await session.scalar(select(URMS.max_risk_deal).where(URMS.tg_id == tg_id))
|
||||||
|
commission_fee = await session.scalar(select(URMS.commission_fee).where(URMS.tg_id == tg_id))
|
||||||
|
|
||||||
data = {
|
data = {
|
||||||
'price_profit': price_profit,
|
'price_profit': price_profit,
|
||||||
'price_loss': price_loss,
|
'price_loss': price_loss,
|
||||||
'max_risk_deal': max_risk_deal
|
'max_risk_deal': max_risk_deal,
|
||||||
|
'commission_fee': commission_fee,
|
||||||
}
|
}
|
||||||
|
|
||||||
return data
|
return data
|
||||||
@@ -273,3 +277,29 @@ async def update_max_risk_deal(tg_id, num):
|
|||||||
await session.execute(update(URMS).where(URMS.tg_id == tg_id).values(max_risk_deal = num))
|
await session.execute(update(URMS).where(URMS.tg_id == tg_id).values(max_risk_deal = num))
|
||||||
|
|
||||||
await session.commit()
|
await session.commit()
|
||||||
|
|
||||||
|
|
||||||
|
async def update_entry_order_type(tg_id, order_type):
|
||||||
|
async with async_session() as session:
|
||||||
|
await session.execute(
|
||||||
|
update(UMS)
|
||||||
|
.where(UMS.tg_id == tg_id)
|
||||||
|
.values(entry_order_type=order_type)
|
||||||
|
)
|
||||||
|
await session.commit()
|
||||||
|
|
||||||
|
|
||||||
|
async def get_entry_order_type(tg_id: object) -> str | None | Any:
|
||||||
|
async with async_session() as session:
|
||||||
|
order_type = await session.scalar(
|
||||||
|
select(UMS.entry_order_type).where(UMS.tg_id == tg_id)
|
||||||
|
)
|
||||||
|
# Если в базе не установлен тип — возвращаем значение по умолчанию
|
||||||
|
return order_type or 'Market'
|
||||||
|
|
||||||
|
|
||||||
|
async def update_commission_fee(tg_id, num):
|
||||||
|
async with async_session() as session:
|
||||||
|
await session.execute(update(URMS).where(URMS.tg_id == tg_id).values(commission_fee = num))
|
||||||
|
|
||||||
|
await session.commit()
|
Reference in New Issue
Block a user