async def get_user_balance(ns={}): """ 根据 userid 查询对应机构的客户余额。 :param userid: 用户 ID :return: 账户余额(与 getCustomerBalance 返回值一致) """ debug(ns) # apikey = ns.get('apikey') userid = ns.get('userid') db = DBPools() async with db.sqlorContext('kboss') as sor: # if not apikey: # return { # 'status': 'error', # 'msg': 'apikey is required' # } # userid_li = await sor.R('user_api_keys', {'opc_apikey': apikey}) # if not userid_li: # return { # 'status': 'error', # 'msg': 'apikey无效,请联系管理员' # } # userid = userid_li[0]['userid'] if not userid: return { 'status': 'error', 'msg': 'userid is required' } user = await sor.R('users', {'id': userid}) if not user: return { 'status': 'error', 'msg': '用户不存在' } orgid = await sor.R('organization', {'id': user[0]['orgid']}) balance = await getCustomerBalance(sor, orgid[0]['id']) return { 'status': 'ok', 'balance': balance } ret = await get_user_balance(params_kw) return ret