У меня есть коллекция user
, в которой есть объект роли с идентификатором роли. У меня также есть коллекция roles
с идентификатором
Теперь для каждой роли я хочу получить список пользователей.
Пример:
[
{
"name": "Scott",
"role": {
"roleId": "123432"
}
},
{
"name": "John",
"role": {
"roleId": "123432"
}
},
{
"name": "Scott",
"role": {
"roleId": "556432"
}
}
]
Данные ролей:
[
{
"id": "123432"
"name": "admin",
"type": "internal"
},
{
"id": "556432"
"name": "owner",
"type": "external"
},
{
"id": "556432"
"name": "owner",
"type": "internal"
}
]
Теперь я хочу получить все роли типа internal
и связанных с ними пользователей:
Итак, вывод должен быть
[
{
"role": "123432",
"users": [
{
"name": "Scott",
"role": {
"roleId": "123432"
}
},
{
"name": "John",
"role": {
"roleId": "123432"
}
}
],
{
"role": "556432",
"users": []
}
}
]
Я делаю это с помощью Spring Boot. Если кто-нибудь может помочь мне в том, как получить эту агрегацию с помощью Spring Boot mongo, это было бы очень полезно для меня. Большое спасибо.