def get_by_class_code(code: Union[str, List[str]], parser: Dict[str, Any]) -> List[Dict[str, Any]]: sql_parts = Filter.get_filter(parameters={ 'codes': tuple(code if isinstance(code, list) else [code]) }, parser=parser) sql = Entity.build_sql(nodes=True) + f""" WHERE class_code IN %(codes)s {sql_parts['clause']} GROUP BY e.id ORDER BY {', '.join(parser['column'])} {parser['sort']};""" g.cursor.execute(sql, sql_parts['parameters']) return [dict(row) for row in g.cursor.fetchall()]
def get_by_system_class(classes: str, parser: Dict[str, Any]) -> List[Dict[str, Any]]: sql_parts = Filter.get_filter(parameters={ 'class': tuple(classes if isinstance(classes, list) else [classes]) }, parser=parser) sql = Entity.build_sql(nodes=True, aliases=True) + f""" WHERE e.system_class IN %(class)s {sql_parts['clause']} GROUP BY e.id ORDER BY {', '.join(parser['column'])} {parser['sort']};""" g.cursor.execute(sql, sql_parts['parameters']) return [dict(row) for row in g.cursor.fetchall()]
def get_by_system_class(classes: str, parser: Dict[str, Any]) -> List[Entity]: parameters = { 'class': tuple(classes if isinstance(classes, list) else [classes]) } sql = Db.build_sql(nodes=True, aliases=True) + """ WHERE e.system_class IN %(class)s {clause} GROUP BY e.id ORDER BY {order} {sort};""".format( clause=Filter.get_filter(parameters=parameters, parser=parser), order=', '.join(parser['column']), sort=parser['sort']) g.cursor.execute(sql, parameters) return [Entity(row) for row in g.cursor.fetchall()]
def get_by_class_code_api(code: Union[str, List[str]], parser: Dict[str, Any]) -> List[Entity]: parameters = { 'codes': tuple(code if isinstance(code, list) else [code]) } sql = Db.build_sql(nodes=True) + """ WHERE class_code IN %(codes)s {clause} GROUP BY e.id ORDER BY {order} {sort};""".format( clause=Filter.get_filter(parameters=parameters, parser=parser), order=', '.join(parser['column']), sort=parser['sort']) g.cursor.execute(sql, parameters) return [Entity(row) for row in g.cursor.fetchall()]