示例#1
0
 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()]
示例#2
0
 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()]
示例#3
0
 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()]
示例#4
0
 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()]