| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061 | const laporanModel = require('../../model/laporan.model')const { cekSatuDataLaporan } = require('../../utils/cekData')const handleError = require('../../utils/handleError')const response = require('../../utils/responseHandler')const { validate } = require('../../utils/validation')const pemantauanModel = require('../../model/pemantauan.model')exports.update = handleError(async (req, res) => {  const user = req.user  const { id } = req.params  const isValid = validate(res, req.body, {    judul: 'string',    dari_tanggal: { type: 'date', convert: true },    sampai_tanggal: { type: 'date', convert: true },    warna: 'string',  })  if (!isValid) return  const { judul, dari_tanggal, sampai_tanggal, warna } = req.body  const laporan = await cekSatuDataLaporan(res, user, id)  if (!laporan) return  const data = await laporanModel.findByIdAndUpdate(    laporan._id,    {      jadwal: {        judul,        dari_tanggal,        sampai_tanggal,        warna,      },    },    {      new: true,    }  )  await pemantauanModel.findOneAndUpdate(    {      laporan: laporan._id,    },    {      $push: {        riwayat: {          user: user._id,          keterangan: 'Mengatur Jadwal',          jadwal: {            dari_tanggal,            sampai_tanggal,          },        },      },    }  )  return response.success(res, {    message: 'Berhasil ubah jadwal',    data,  })})
 |