update
This commit is contained in:
parent
52568b3352
commit
faedbb8edf
@ -47,14 +47,21 @@ async def get_user_and_role(ns={}):
|
|||||||
SELECT u.*
|
SELECT u.*
|
||||||
FROM users u
|
FROM users u
|
||||||
LEFT JOIN organization o ON u.orgid = o.id AND o.del_flg='0'
|
LEFT JOIN organization o ON u.orgid = o.id AND o.del_flg='0'
|
||||||
|
LEFT JOIN (
|
||||||
|
SELECT userid, MAX(create_at) AS userrole_create_at
|
||||||
|
FROM userrole
|
||||||
|
WHERE del_flg='0'
|
||||||
|
GROUP BY userid
|
||||||
|
) ur_sort ON u.id = ur_sort.userid
|
||||||
WHERE %s
|
WHERE %s
|
||||||
ORDER BY u.create_at DESC
|
ORDER BY ur_sort.userrole_create_at DESC, u.create_at DESC
|
||||||
LIMIT %d OFFSET %d
|
LIMIT %d OFFSET %d
|
||||||
""" % (where_sql, page_size, offset)
|
""" % (where_sql, page_size, offset)
|
||||||
users = await sor.sqlExe(sql, {'orgid': orgid})
|
users = await sor.sqlExe(sql, {'orgid': orgid})
|
||||||
for user in users:
|
for user in users:
|
||||||
user['roles'] = []
|
user['roles'] = []
|
||||||
userroles = await sor.R('userrole', {'userid': user['id']})
|
userroles = await sor.R('userrole', {'userid': user['id']})
|
||||||
|
userroles = sorted(userroles, key=lambda item: item.get('create_at') or '', reverse=True)
|
||||||
for userrole in userroles:
|
for userrole in userroles:
|
||||||
if userrole.get('del_flg') == '1' or not userrole.get('roleid'):
|
if userrole.get('del_flg') == '1' or not userrole.get('roleid'):
|
||||||
continue
|
continue
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user