Он получился вот таким:
                  
                  
                  // Получить заданное время от текущей даты в MS
                  
                  
                  const timeRange = (ms = 0) => Math.round(new Date().getTime() / 1000) + 10800 - ms;
                  
                  
                  
                  
                  
                  // Получить средние значения за неделю от текущего времени (GET)
                  
                  
                  exports.dailyAverages = function(cb) {
                  
                  
                   db.get().collection(config.collectionConnect).aggregate([
                  
                  
                  
                  
                  
                    // Сортировка записей по времени
                  
                  
                    { $match:
                  
                  
                     {
                  
                  
                       Date: { $gte: timeRange(604800), $lt: timeRange() }
                  
                  
                     }
                  
                  
                    },
                  
                  
                  
                  
                  
                    // Агрегация найденных записей
                  
                  
                    // и вычисление средних значений
                  
                  
                    { $group:
                  
                  
                     {
                  
                  
                      _id: null,
                  
                  
                      LastTimeUpdate: { $max: "$Date" },
                  
                  
                      Temperature: { $avg: "$Temperature" },
                  
                  
                      Pressure: { $avg: "$Pressure" }
                  
                  
                     }
                  
                  
                    },
                  
                  
                  
                  
                  
                    // Округление средних значений
                  
                  
                    { $project:
                  
                  
                     {
                  
                  
                      _id: null,
                  
                  
                      LastTimeUpdate: 1,
                  
                  
                      Temperature: { $round: ["$Temperature", 1] },
                  
                  
                      Pressure: { $round: ["$Pressure", 1] }
                  
                  
                     }
                  
                  
                    },
                  
                  
                  
                  
                  
                    // Удаление лишних полей из объекта
                  
                  
                    { $project:
                  
                  
                     {
                  
                  
                      _id: 0,
                  
                  
                      Date: 0,
                  
                  
                      City: 0,
                  
                  
                      Street: 0
                  
                  
                     }
                  
                  
                    }
                  
                  
                  
                  
                  
                   ]).next(function(err, doc) {
                  
                  
                    cb(err, doc);
                  
                  
                   });
                  
                  
                  };
                  
                  
                  
                  
                  
                  Подскажите пожалуйста, можно ещё что-нибудь в нём поправить / оптимизировать?
                  
                  
                
Например убрать юзлесс комменты каждые 2 строки, и юзать промисы/асинк-авайт вместо колбеков
Обсуждают сегодня