const laporanModel = require('../model/laporan.model') const handleError = require('../utils/handleError') const response = require('../utils/responseHandler') const { validate } = require('../utils/validation') const { addManyDokumen } = require('../utils/dokumenFunction') exports.add = handleError(async (req, res) => { const user = req.user const { id } = req.params const isValid = validate(res, req.body, { judul: 'string', tanggal: { type: 'date', convert: true }, }) if (!isValid) return const files = req.files if (!files.length) { return response.error(res, { message: 'dokumen harus ada', }) } const dokumen = await addManyDokumen(files) const dokumen_id = dokumen.map((e) => e._id) const { judul, tanggal } = req.body const data = await laporanModel.findOneAndUpdate( { _id: id, user: user._id, jadwal: { $exists: true, $ne: null, }, }, { $push: { evaluasi: { judul, tanggal, dokumen: dokumen_id, }, }, }, { new: true, } ) if (!data) { return response.error(res, { message: 'id tidak ada', code: 404, }) } return response.success(res, { message: 'Berhasil tambah evaluasi', data, }) })