Eu estou tentando passar um argumento que contem ids de usuários do banco de dados para uma função, só que quando entro na route dela ela só fica ou carregando para sempre ou aparece um conjunto vazio. Eis os códigos: Eis os códigos:
const calculate_followers_week = (req, res) => {
let user_id = req.params.id;
UserHistorySchema.find(user_id?{_id: mongoose.Types.ObjectId(user_id)}:{}, {'history.created_at':1, 'history.meta.indicators':1})
.lean()
.exec()
.then(data => {
var processado = UserMetricsModule.getUserFollowedBy(data);
res.status(200).json(processado);
})
.catch(err => {
res.status(400).json(err);
})
}
Esse é onde eu uso o find para pesquisar os dados que eu preciso com mongoose.
function getUserFollowedBy (user) {
let yesterday = moment().subtract(1, 'days');
let difference = 0;
for(i = 0; i < user.length; i++) {
if(moment(user[i].created_at).isSameOrAfter(yesterday, 'days')) {
difference = user[i + 1].meta.indicators.followed_by - user[i].meta.indicators.followed_by;
console.log(" " + difference);
} else {}
}
}
E esse era para ser o que receberia esses dados e faria um calculo a partir deles
Mas não está dando certo nem passar os dados e muito menos usar eles. Já tentei de tudo mas não consegui encontrar uma solução para isso, ainda estou aprendendo. "Se precisarem de mais alguma informação é só perguntar". Agradeço desde já. :-)