async def component_search(ns={}): node_id = ns['node_id'] if ns.get('node_id') else '' component_type = ns['component_type'] if ns.get('component_type') else '' component_model = ns['component_model'] if ns.get('component_model') else '' status = ns['status'] if ns.get('status') else '' db = DBPools() async with db.sqlorContext('kboss') as sor: try: if component_type or component_model or status: search_sql = """ SELECT * from component WHERE (node_id = '%s' or component_type = '%s' or component_model = '%s' or status = '%s') and del_flg = '0'; """ % (node_id, component_type, component_model, status) res = await sor.sqlExe(search_sql, {}) else: search_sql = """ SELECT * from component WHERE del_flg = '0'; """ res = await sor.sqlExe(search_sql, {}) return { 'status': True, 'msg': '算力中心节点实例查找成功', 'data': res } except Exception as e: return { 'status': False, 'msg': '算力中心节点实例查找错误, %s' % str(e) } ret = await component_search(params_kw) return ret