yazid138 2 years ago
parent
commit
19f63ac020

+ 2 - 2
.env

@@ -1,7 +1,7 @@
-BASE_URL=https://api.sidali.sixsenz.net
+BASE_URL=https://api.sidali.kemdikbud.go.id
 PORT=5000
 SECRET=3d3eb3d842f4e595048f1806ca815f8092e29fb6b98a30dff0b8241ad0e6c273
-MONGO_URL=mongodb://production.sidali.sixsenz.net:50010/ptb-db
+MONGO_URL=mongodb://mongodb-production.sidali.kemdikbud.go.id:50010/ptb-db
 TOKEN_DEVELOPMENT=77aecfec-10ac-3b4f-ab59-3fbfbeed6324
 TOKEN_PRODUCTION=5b62f743-eef2-3370-8c66-6951b2e9c2c5
 TOKEN_AUTO=5j12h43g6hj2367234k57

+ 5 - 5
controller/auth.controller.js

@@ -41,12 +41,12 @@ exports.login = handleError(async (req, res) => {
     user_id: user.id,
   })
   let role = null
-  if (process.env.ENV === 'production') {
+  //if (process.env.ENV === 'production') {
     role = user.peran.filter((e) => roleDataProduction.includes(e.peran.id))[0]
     role.peran.id = convertRole(role.peran.id)
-  } else {
+  /*} else {
     role = user.peran.filter((e) => roleData.includes(e.peran.id))[0]
-  }
+  }*/
   let dataRole = {
     id: role.peran.id,
     nama: role.peran.nama,
@@ -65,7 +65,7 @@ exports.login = handleError(async (req, res) => {
       isPrivate: false,
     })
   } else {
-    if (process.env.ENV === 'production') {
+    //if (process.env.ENV === 'production') {
       if (cekUser.role.id !== role.peran.id) {
         await userModel.updateOne({ _id: cekUser._id }, { role: dataRole })
       }
@@ -80,7 +80,7 @@ exports.login = handleError(async (req, res) => {
           user_id: user.id,
         })
       }
-    }
+    //}
   }
 
   const accessToken = jwt.sign({ _id: cekUser._id }, process.env.SECRET, {

+ 58 - 1
controller/laporan/evaluasi.controller.js

@@ -6,7 +6,6 @@ const { addManyDokumen } = require('../../utils/dokumenFunction')
 const { cekSatuDataLaporan } = require('../../utils/cekData')
 const pemantauanModel = require('../../model/pemantauan.model')
 
-
 exports.add = handleError(async (req, res) => {
   const user = req.user
   const { id } = req.params
@@ -73,3 +72,61 @@ exports.add = handleError(async (req, res) => {
     data,
   })
 })
+
+exports.edit = handleError(async (req, res) => {
+  const user = req.user
+  const { id } = req.params
+  const { judul, tanggal, evaluasi_id } = req.body
+  const isValid = validate(res, req.body, {
+    evaluasi_id: 'string',
+    judul: 'string|optional',
+    tanggal: { type: 'date', convert: true, optional: true },
+  })
+  if (!isValid) return
+
+  const laporan = await cekSatuDataLaporan(res, user, id, {
+    'evaluasi._id': evaluasi_id,
+  })
+  if (!laporan) return
+
+  const files = req.files
+  let dokumen_id
+  if (files.length) {
+    const dokumen = await addManyDokumen(files)
+    dokumen_id = dokumen.map((e) => e._id)
+  }
+
+  const data = await laporanModel.findOneAndUpdate(
+    {
+      _id: laporan._id,
+      jadwal: {
+        $exists: true,
+        $ne: null,
+      },
+      'evaluasi._id': evaluasi_id,
+    },
+    {
+      $set: {
+        'evaluasi.$.judul': judul,
+        'evaluasi.$.tanggal': tanggal,
+        'evaluasi.$.dokumen': dokumen_id,
+      },
+    }
+  )
+
+  await pemantauanModel.create({
+    laporan: laporan._id,
+    user: user._id,
+    action: 'EDIT EVALUASI',
+    pt_id: laporan.pt.id,
+    keterangan: 'Melakukan edit evaluasi',
+    dokumen: dokumen_id,
+    for_pt: false,
+    for_public: true,
+  })
+
+  return response.success(res, {
+    message: 'Berhasil edit evaluasi',
+    data,
+  })
+})

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

@@ -3,5 +3,6 @@ const evaluasi = require('../../../controller/laporan/evaluasi.controller')
 const handleDokumen = require('../../../utils/handleDokumen')
 
 router.post('/add/:id', handleDokumen.array('dokumen'), evaluasi.add)
+router.put('/edit/:id', handleDokumen.array('dokumen'), evaluasi.edit)
 
 module.exports = router