91 lines
3.9 KiB
Plaintext
91 lines
3.9 KiB
Plaintext
async def getUserInfo(ns={}):
|
|
db = DBPools()
|
|
async with db.sqlorContext('kboss') as sor:
|
|
try:
|
|
if not ns.get('orgid'):
|
|
# find orgid info from users
|
|
org_info = await sor.R('users', {'id': await get_user(), 'del_flg': '0'})
|
|
if org_info:
|
|
orgid = org_info[0].get('orgid')
|
|
else:
|
|
return {
|
|
'status': False,
|
|
'msg': 'can not find orgid from users'
|
|
}
|
|
else:
|
|
orgid = ns.get('orgid')
|
|
|
|
orgs = await sor.R('organization', {'id': orgid, 'del_flg': '0'})
|
|
org = orgs[0] if orgs else {}
|
|
nss = {}
|
|
nss['orgid'] = orgid
|
|
nss['fullName'] = org.get('orgname') or ''
|
|
nss['name'] = org.get('orgname') or ''
|
|
nss['orgcode'] = org.get('orgcode') or ''
|
|
nss['address'] = org.get('address') or ''
|
|
nss['contact'] = org.get('contactor') or ''
|
|
nss['tel'] = org.get('contactor_phone') or ''
|
|
nss['email'] = org.get('emailaddress') or ''
|
|
nss['parentid'] = org.get('parentid') or ''
|
|
par = await sor.R('organization', {'id':nss.get('parentid')})
|
|
nss['parentname'] = par[0]['orgname']
|
|
# find salemanid info from customers
|
|
cust = await sor.R('customer', {'customerid': orgid, 'del_flg': '0'})
|
|
customer = cust[0] if cust else {}
|
|
salemanid = customer.get('salemanid')
|
|
org_name = ''
|
|
if salemanid:
|
|
saleman = await sor.R('users', {'id': salemanid, 'del_flg': '0'})
|
|
saleman_user = saleman[0] if saleman else {}
|
|
salemanorgid = saleman_user.get('orgid')
|
|
if salemanorgid:
|
|
org_name_li = await sor.R('organization', {'id': salemanorgid, 'del_flg': '0'})
|
|
if org_name_li:
|
|
org_name = org_name_li[0].get('orgname') or ''
|
|
else:
|
|
saleman_user = {}
|
|
nss['saleMgrName'] = saleman_user.get('username') or ''
|
|
nss['saleMgrEmail'] = saleman_user.get('email') or ''
|
|
nss['saleMgrTel'] = saleman_user.get('mobile') or ''
|
|
# add saleman org name
|
|
nss['saleorgname'] = org_name
|
|
|
|
# find invoice attr from orgid
|
|
invoice_attr = await sor.R('invoice_attr', {'customerid': orgid, 'del_flg': '0'})
|
|
invoice = invoice_attr[0] if invoice_attr else {}
|
|
nss['bankName'] = invoice.get('bank_name') or ''
|
|
nss['bankAcc'] = invoice.get('bank_account') or ''
|
|
nss['identityName'] = invoice.get('invoice_title') or ''
|
|
nss['taxTel'] = invoice.get('phone') or ''
|
|
nss['taxpayerIdentity'] = invoice.get('tax_no') or ''
|
|
nss['taxAddress'] = invoice.get('address') or ''
|
|
|
|
# find zj_users from orgid
|
|
zj_attr = await sor.R('zj_users', {'orgid': orgid, 'del_flg': '0'})
|
|
zj = zj_attr[0] if zj_attr else {}
|
|
nss['userAc'] = zj.get('userac') or ('kboss_' + orgid)
|
|
nss['userPhone'] = zj.get('userphone') or nss['tel']
|
|
nss['remark'] = zj.get('remark') or ''
|
|
nss['ak'] = zj.get('ak') or ''
|
|
nss['sk'] = zj.get('sk') or ''
|
|
nss['thirdId'] = zj.get('thirdid') or ''
|
|
nss['appId'] = zj.get('appid') or ''
|
|
nss['supId'] = zj.get('supid') or ''
|
|
nss['sync_status'] = zj.get('sync_status')
|
|
return {
|
|
'status': True,
|
|
'msg': 'get user info success',
|
|
'data': nss
|
|
}
|
|
|
|
except Exception as e:
|
|
raise e
|
|
return {
|
|
'status': False,
|
|
'msg': 'get user info failed',
|
|
'data': ''
|
|
}
|
|
|
|
|
|
ret = await getUserInfo(params_kw)
|
|
return ret |