async def HpcUserSearch(ns={}): """ 查找购买了济南超算产品的用户 :param ns: :return: """ db = DBPools() async with db.sqlorContext('kboss') as sor: try: res_list = [] # 获取济南超算id jncs_li = await sor.R('organization', {'orgname': '济南超算', 'del_flg': '0'}) jscs_id = jncs_li[0].get('id') print(jscs_id) # 获取购买过济南超算产品的用户 res_sql = """select org.* from organization as org where id in (select customerid from customer_goods where providerrid = '%s' and del_flg = '0') and del_flg = '0';""" % jscs_id res_li = await sor.sqlExe(res_sql, {}) # 获取已经绑定ldap账号的用户 exits_bind_id = [] bindings_sql = """select * from jncs_usermapping where del_flg='0';""" bindingss = await sor.sqlExe(bindings_sql, {}) for bindss in bindingss: orgid = bindss.get('orgid') if orgid: exits_bind_id.append(orgid) for res_user in res_li: if res_user['id'] not in exits_bind_id: res_list.append(res_user) return { 'status': True, 'msg': '查找用户成功', 'data': res_list } except Exception as e: return { 'status': False, 'msg': '添加用户失败', 'err': e } ret = await HpcUserSearch(params_kw) return ret