Преглед на файлове

add jumlah laporan riwayat

yazid138 преди 3 години
родител
ревизия
73d57dbcde
променени са 2 файла, в които са добавени 32 реда и са изтрити 0 реда
  1. 31 0
      controller/laporan.controller.js
  2. 1 0
      routes/v1/laporan/index.js

+ 31 - 0
controller/laporan.controller.js

@@ -367,3 +367,34 @@ exports.update = handleError(async (req, res) => {
     data: update,
   })
 })
+
+exports.jumlahLaporan = handleError(async (req, res) => {
+  const laporan = await laporanModel.aggregate([
+    {
+      $match: {
+        aktif: true,
+      },
+    },
+    {
+      $group: {
+        _id: '$pt.pembina.nama',
+        jumlah_laporan: {
+          $sum: 1,
+        },
+        propinsi: {
+          $addToSet: '$pt.propinsi.nama',
+        },
+      },
+    },
+    {
+      $sort: {
+        _id: 1,
+      },
+    },
+  ])
+
+  return response.success(res, {
+    message: 'Jumlah Laporan',
+    data: laporan,
+  })
+})

+ 1 - 0
routes/v1/laporan/index.js

@@ -3,6 +3,7 @@ const laporan = require('../../../controller/laporan.controller')
 const handleDokumen = require('../../../utils/handleDokumen')
 
 router.get('/', laporan.getAll)
+router.get('/jumlah', laporan.jumlahLaporan)
 router.get('/:id', laporan.getOne)
 router.post('/create', handleDokumen.array('dokumen'), laporan.create)
 router.put('/update/:id', laporan.update)