from framework import read, where, write from api import PortfoliosRisk __COLUMNS__ = { 'rhp_id': 'id', 'rhp_date': 'date', 'rhp_risk': 'risk', 'rhp_rrs_id': 'signal_id', 'rhp_rebalance': 'rebalance', 'rhp_portfolios': 'portfolios', 'rhp_nav': 'nav', } @read(one=True) def get_one(day, risk: PortfoliosRisk): return f'''select {','.join([f'{x[0]} as {x[1]}' for x in __COLUMNS__.items()])} from robo_hold_portfolios {where(rhp_date=day, rhp_risk=risk)}''' def get_count(risk: PortfoliosRisk = None): @read(one=True) def exec(): return f'''select count(*) as `count` from robo_hold_portfolios {where(rhp_risk=risk)}''' result = exec() return result['count']