async def getdepartment(ns): """ 展示部门 """ db = DBPools() async with db.sqlorContext('kboss') as sor: try: usere = await get_user() if usere == None: return {'status': False, 'msg': '没有获取token'} user = ns['userid'] userid = await sor.R('users', {'id':user}) ns['orgid'] = userid[0]['orgid'] ns['del_flg'] = '0' ns['sort'] = 'create_at desc' data = await sor.R('department', ns) list = [] dict = {} if data: for i in data: dict[i['id']] = i for j in data: if j['parentid'] == None or j['parentid'] == '': list.append(j) else: if 'son' not in dict[j['parentid']]: dict[j['parentid']]['son'] = [] dict[j['parentid']]['son'].append(j) return {'status': True, 'data': list} except Exception as e: raise e return {'status': False} ret = await getdepartment(params_kw) return ret