Browse Source

dah beres di graph

yazid138 3 years ago
parent
commit
783aa95e01
1 changed files with 45 additions and 2 deletions
  1. 45 2
      controller/graph.controller.js

+ 45 - 2
controller/graph.controller.js

@@ -20,6 +20,7 @@ exports.laporan = handleError(async (req, res) => {
     laporanTahun,
     bulan,
     tahun,
+    listJadwal,
   } = req.query
   if (jumlahLaporan == 'true') {
     const delegasi = await cekBanyakDataLaporan(user, { delegasi: true })
@@ -115,8 +116,7 @@ exports.laporan = handleError(async (req, res) => {
     )
   } else if (laporanTahun == 'true') {
     const temp = new Date()
-    let date = {}
-    date = {
+    let date = {
       $expr: {
         $eq: [{ $year: '$createdAt' }, parseInt(tahun) || temp.getFullYear()],
       },
@@ -141,6 +141,49 @@ exports.laporan = handleError(async (req, res) => {
     )
   }
 
+  if (listJadwal == 'true') {
+    if ((tahun && bulan) || bulan) {
+      const temp = new Date()
+      let date = {
+        $expr: {
+          $and: [
+            { $eq: [{ $month: '$jadwal.dari_tanggal' }, parseInt(bulan)] },
+            {
+              $eq: [
+                { $year: '$jadwal.dari_tanggal' },
+                parseInt(tahun) || temp.getFullYear(),
+              ],
+            },
+          ],
+        },
+      }
+
+      data.list_jadwal = await dataLaporanAggregate(
+        user,
+        {
+          ...date,
+          jadwal: {
+            $ne: null,
+            $exists: true,
+          },
+        },
+        {
+          _id: {
+            bulan: {
+              $month: '$jadwal.dari_tanggal',
+            },
+            tahun: {
+              $year: '$jadwal.dari_tanggal',
+            },
+          },
+          jadwal: {
+            $push: '$jadwal',
+          },
+        }
+      )
+    }
+  }
+
   return response.success(res, {
     message: 'Berhasil menganalisis data',
     data,