Допустим, у меня есть база данных firestore, в которой хранятся компании. У каждой компании есть проекты, и у каждого проекта есть рабочие.
У меня есть все три из этих коллекций (компании, проекты и рабочие) в отдельных коллекциях, которые ссылаются друг на друга по идентификатору. (У каждого проекта есть поле компании с идентификатором компании, а у каждого работника есть поле проекта с идентификатором проекта).
Я могу получить все проекты компании по одному маршруту и всех сотрудников проекта по другому маршруту.
Я пытаюсь создать единый маршрут, который возвращает массив компаний, структурированный следующим образом:
[
{
id: "01",
name: "Company 1",
Projects: [
{
id: "01",
name: "Project 1",
Laborers: [
{
id: "01",
name: "Laborer 1"
},
{
id: "02",
name: "Laborer 2"
}
]
},
{
id: "02",
name: "Project 2",
Laborers: [
{
id: "01",
name: "Laborer 1"
},
{
id: "02",
name: "Laborer 2"
}
]
}
]
},
{
id: "02",
name: "Company 2",
Projects: [
{
id: "01",
name: "Project 1",
Laborers: [
{
id: "01",
name: "Laborer 1"
},
{
id: "02",
name: "Laborer 2"
}
]
},
{
id: "02",
name: "Project 2",
Laborers: [
{
id: "01",
name: "Laborer 1"
},
{
"id": "02",
name: "Laborer 2"
}
]
}
]
}
]
Как собрать данные вместе таким образом и вернуть их по одному маршруту с использованием функций firebase? (Я использую express. js в качестве бэкэнда рамки).