выборка нескольких полей из нескольких коллекций из драйвера mongodb- nodejs на основе элементов массива - PullRequest
0 голосов
/ 27 января 2020

Мне нужно получить данные из mongodb относительно элементов массива, которые я получу в req.body. Описание: POSTMAN REQUEST там также может быть более 10 сопоставленных поставщиков

    {
    "_id": "5e2554ec3405363bc4bf86c0",
     "mappedVendors": [
                "5e2555783405363bc4bf86c5",
                "5e2555643405363bc4bf86c4",
                "5e2555643405363bc4bf86c8"
    ]}

коллекция 1: мастера

"_id" : ObjectId("5e2554ec3405363bc4bf86c0"),
        "mappedVendors" : [
                ObjectId("5e2555783405363bc4bf86c5"),
                ObjectId("5e2555643405363bc4bf86c4"),
                ObjectId("5e2555643405363bc4bf86c9")
       "phoneNo" : 9082625539,
        "name" : "dealer 2",
        "address" : "dealer address 2",
        "depotCode" : "D3137",
        "state" : "Tamilnadu",
        "city" : "chennai",

ПРИМЕЧАНИЕ: детали mappedVendors для, например: ObjectId ("5e2555643405363bc4bf86c4") находятся в той же коллекции мастеров

сбор 2: заказы

"_id" : ObjectId("5e2848e309b2ad1b4c5d994c"),
        "isApproved" : false,
"orderCreatedOn" : ISODate("2020-01-22T18:30:00Z"),
"vendorOrder" : [],
"frequency" : "WE",
"orderCreatedBy" : ObjectId("5e2555643405363bc4bf86c4"),

Сбор 3: платежи

 "_id" : ObjectId("5dd78e6c8f2683327c1e26e1"),
 "paymentOfTheDay" : 2200,
 "outstanding" : 300,
 "paymentDoneBy":ObjectId("5e2555643405363bc4bf86c4")

сценарий: i получит массив mappedVendors в req.body, его может быть много, и в отношении каждого mappedVendor мне нужно выбрать следующие поля: "phoneNo", "name", "address", "depotCode" из коллекции мастеров + "isApproved "из коллекции заказов +" непогашенный "из коллекции платежей , чем мне нужно отправить все эти ** данные в объекте массива ** во внешний интерфейс для каждого mappedVendors

"vendorListDetails":[{
"phoneNo","name","address","depotCode" ,"isApproved","outstanding"
}]
...