const handleError = require('../../utils/v1/handleError') const response = require('../../utils/responseHandler') const { addManyDokumen } = require('../../utils/dokumenFunction') const { cekSatuDataSanksi } = require('../../utils/v1/cekData') const pemantauanModel = require('../../model/pemantauan.model') const sanksiModel = require('../../model/sanksi.model') exports.createRekomendasi = handleError(async (req, res) => { const user = req.user const { id } = req.params const sanksi = await cekSatuDataSanksi(res, user, id, { delegasi: true }) if (!sanksi) 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 data = await sanksiModel.findOneAndUpdate( { _id: sanksi._id, }, { $push: { rekomendasi: { dokumen: dokumen_id, }, }, }, { new: true, } ) let for_public = true if (sanksi.rekomendasi.length > 0) { for_public = false } await pemantauanModel.create({ laporan: sanksi.laporan._id, user: user._id, action: 'ADD REKOMENDASI', pt_id: sanksi.laporan.pt.id, keterangan: 'Melakukan rekomendasi delegasi', dokumen: dokumen_id, for_pt: false, for_public, }) return response.success(res, { message: 'Berhasil tambah rekomendasi delegasi', data, }) })