diff --git a/api/app/lib/controllers/organization/index.js b/api/app/lib/controllers/organization/index.js index ddeeae0..28c7d3a 100644 --- a/api/app/lib/controllers/organization/index.js +++ b/api/app/lib/controllers/organization/index.js @@ -193,12 +193,17 @@ async function user (ctx) { for (let u of userRes.rows.concat(adminRes)) { userIds.add(u.pepUserId) } - let userPepRes = await clickHouse.pepEmis.query(`SELECT user.id AS id, "user"."name" AS name, department.name AS depName FROM department_user LEFT JOIN user ON department_user.user=user.id LEFT JOIN department ON department.id=department_user.department WHERE user.id IN (${[...userIds].join(',')})`).toPromise() + let userPepRes = await clickHouse.pepEmis.query(`SELECT user.id AS id, "user"."name" AS name, department.name AS depName, department.id AS depId FROM department_user LEFT JOIN user ON department_user.user=user.id LEFT JOIN department ON department.id=department_user.department WHERE user.id IN (${[...userIds].join(',')})`).toPromise() for (let u of userRes.rows.concat(adminRes)) { const corUsers = userPepRes.filter(up => up.id == u.pepUserId) u.dataValues.name = corUsers[0].name - u.dataValues.departments = corUsers.map(cu => cu.depName) + u.dataValues.departments = corUsers.map(cu => { + return { + name: cu.depName, + id: cu.depId + } + }) } ctx.status = 200