Cómo incluir la agregación en la condición if, ¿necesito usar el método de proyecto o condición en la condición if anterior y completar el catálogo? Necesito obtener los datos del mongo dB en el mismo orden que la matriz de Ids de video, pero viene en un orden diferente, así que decidí usar la agregación para obtener el video en el orden correcto como en la matriz de Ids de video. Por favor, ayúdame a resolver este problema.
let filter = {$match:{ customerId: customerId, _id: { $in: _.map(videoIds, id => mongoose.Types.ObjectId(id)) || [] }, _isDeleted: false, isActive: true }, $lookup:{ from:'catalogues', localField:'_isDeleted', foreignField:'_id', as:false } } if (!req.isLocationWhitelisted) { if (req._countryCode) { $or= filter.$match['languages.country'] = { $in: req._countryCode } filter.$lookup['languages.country'] = { $in: req._countryCode } , filter.$match['languages.country.141'] = { $exists: true } filter.$lookup['languages.country.141'] = { $exists: true } } } let videoList = await Video.aggregate(filter);