30 lines
1.1 KiB
Plaintext
30 lines
1.1 KiB
Plaintext
async def addUserrole(ns):
|
|
"""
|
|
用户分配角色
|
|
:param user_id: 用户id
|
|
:param role_id: 角色id
|
|
:return:
|
|
"""
|
|
db = DBPools()
|
|
async with db.sqlorContext('kboss') as sor:
|
|
if ns:
|
|
dleroles = {'userid': ns.get('userid')}
|
|
userreacs = await sor.R('userrole', dleroles)
|
|
for i in userreacs:
|
|
if i['roleid'] not in eval(ns.get('roleid')):
|
|
await sor.U('userrole', {'del_flg': '1', 'id': i['id']})
|
|
for i in eval(ns.get('roleid')):
|
|
roles = {'userid':ns.get('userid'),'roleid':i}
|
|
reacs = await sor.R('userrole', roles)
|
|
if len(reacs) >= 1:
|
|
rolens = {'id':reacs[0]['id'],'del_flg':'0'}
|
|
await sor.U('userrole', rolens)
|
|
continue
|
|
ns['id'] = uuid()
|
|
ns['roleid'] = i
|
|
await sor.C('userrole',ns)
|
|
return {'status': True, 'msg': '添加成功'}
|
|
return {'status': False, 'msg': '添加失败'}
|
|
|
|
ret = await addUserrole(params_kw)
|
|
return ret |