keberatan.controller.js 1.2 KB

123456789101112131415161718192021222324252627282930313233343536373839
  1. const handleError = require('../utils/handleError')
  2. const sanksiModel = require('../model/sanksi.model')
  3. const { validate } = require('../utils/validation')
  4. const { addManyDokumen } = require('../utils/dokumenFunction')
  5. const { cekSatuDataSanksi } = require('../utils/cekData')
  6. const response = require('../utils/responseHandler')
  7. exports.create = handleError(async (req, res) => {
  8. const user = req.user
  9. const { laporan_id, sanksi_id } = req.query
  10. if (!laporan_id || !sanksi_id) {
  11. return response.error(res, {
  12. message: 'query laporan_id atau sanksi_id harus ada',
  13. })
  14. }
  15. const laporan = await cekSatuDataLaporan(res, user, laporan_id)
  16. const sanksi = await cekSatuDataSanksi(res, user, sanksi_id)
  17. if (!laporan || !sanksi) return
  18. const files = req.files
  19. if (!files.length) {
  20. return response.error(res, {
  21. message: 'dokumen harus ada',
  22. })
  23. }
  24. const dokumen = await addManyDokumen(files)
  25. const dokumen_id = dokumen.map((e) => e._id)
  26. sanksiModel.findOneAndUpdate(
  27. { laporan: laporan._id, _id: sanksi._id },
  28. {
  29. keberatan: {
  30. dokumen: dokumen_id,
  31. },
  32. }
  33. )
  34. })
  35. exports.createJawaban = handleError(async (req, res) => {})