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