kboss/b/hpc/HpcUserSearch.dspy
2025-07-16 14:27:17 +08:00

44 lines
1.6 KiB
Plaintext

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