ソースを参照

fix data graph

yazid138 3 年 前
コミット
150067a1b2
1 ファイル変更43 行追加40 行削除
  1. 43 40
      controller/graph.controller.js

+ 43 - 40
controller/graph.controller.js

@@ -34,8 +34,8 @@ exports.laporan = handleError(async (req, res) => {
   }
 
   if (jadwal == 'true') {
-    const hasJadwal = laporan.filter((e) => e.jadwal).length
-    const notHasJadwal = laporan.filter((e) => !e.jadwal).length
+    const hasJadwal = laporan.filter((e) => e.jadwal.judul).length
+    const notHasJadwal = laporan.filter((e) => !e.jadwal.judul).length
 
     data.jadwal = {
       hasJadwal,
@@ -45,10 +45,10 @@ exports.laporan = handleError(async (req, res) => {
 
   if (evaluasi == 'true') {
     const hasEvaluasi = laporan.filter(
-      (e) => e.evaluasi.length && e.jadwal
+      (e) => e.evaluasi.length && e.jadwal.judul
     ).length
     const notHasEvaluasi = laporan.filter(
-      (e) => e.evaluasi.length == 0 && e.jadwal
+      (e) => e.evaluasi.length == 0 && e.jadwal.judul
     ).length
 
     data.evaluasi = {
@@ -142,46 +142,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,
+    const temp = new Date()
+    let date = {
+      $expr: {
+        $and: [
+          {
+            $eq: [
+              { $month: '$jadwal.dari_tanggal' },
+              parseInt(bulan) || temp.getMonth() + 1,
+            ],
           },
+          {
+            $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',
-            },
+      },
+      {
+        _id: {
+          bulan: {
+            $month: '$jadwal.dari_tanggal',
           },
-          jadwal: {
-            $push: '$jadwal',
+          tahun: {
+            $year: '$jadwal.dari_tanggal',
           },
-        }
-      )
-    }
+        },
+        jadwal: {
+          $push: '$jadwal',
+        },
+      }
+    )
   }
 
   return response.success(res, {