From 245d86ba58520641722687ed817cb6142d026140 Mon Sep 17 00:00:00 2001 From: "fabio.ferreira3" <ffem@hcuge.ch> Date: Wed, 12 Jun 2019 19:08:48 +0200 Subject: [PATCH] add request 6 --- api/app/queries.js | 23 +++++++++++++++++++++++ api/app/router.js | 2 ++ 2 files changed, 25 insertions(+) diff --git a/api/app/queries.js b/api/app/queries.js index 7fea424..9869e62 100644 --- a/api/app/queries.js +++ b/api/app/queries.js @@ -119,3 +119,26 @@ exports.byAggregateCustomerId = (req, res) => { res.json(docs); }); } + + +exports.ordersAggregateByCustomer = (req, res) => { + + var id = Long.fromString(req.params.id); + console.log(id); + + //u.logReq(req); + db.collection('orders').aggregate([ + //{ $match: { 'customer.id': { $eq: id } }}, + { $group: { + _id : {id: "$customer.id", pseudo: "$customer.pseudo"}, + count: { $sum: 1}} + } + ]).toArray((err, docs) => { + if (err) { + console.log(err); + res.send(err); + } + console.log(docs); + res.json(docs); + }); +} \ No newline at end of file diff --git a/api/app/router.js b/api/app/router.js index 2f8cbfe..e11973a 100644 --- a/api/app/router.js +++ b/api/app/router.js @@ -19,6 +19,8 @@ router.get('/pseudo-with-more-equal-bags/:number', queries.showPseudoOfOrdersBag router.get('/by-customer-id/:id', queries.byAggregateCustomerId); +router.get('/orders-by-customer/:id', queries.ordersAggregateByCustomer); + router.use((_, res) => res.status(404).send({ message: 'Route not found' })); module.exports = router; -- GitLab