covid.js 936 B

123456789101112131415161718192021222324252627282930313233343536373839
  1. const Covid = require("../models/covid.js");
  2. module.exports = {
  3. /*
  4. POST: get data based on country and date
  5. req.body = {
  6. from: Date
  7. to: Date
  8. isoCode: String
  9. }
  10. response = [Covid]
  11. */
  12. data: function(req, res){
  13. let from = new Date(req.body.from);
  14. let to = new Date(req.body.to);
  15. Covid.aggregate([
  16. {$match: {
  17. iso_code: req.body.isoCode,
  18. date: {$gte: from, $lte: to},
  19. }},
  20. {$sort: {date: 1}},
  21. {$project: {
  22. location: 1,
  23. date: 1,
  24. total_cases: 1,
  25. new_cases: 1,
  26. total_deaths: 1,
  27. new_deaths: 1
  28. }}
  29. ])
  30. .then((covids)=>{
  31. return res.json(covids);
  32. })
  33. .catch((err)=>{
  34. console.error(err);
  35. });
  36. },
  37. }