|  | @@ -87,6 +87,78 @@ exports.create = handleError(async (req, res) => {
 | 
	
		
			
				|  |  |    })
 | 
	
		
			
				|  |  |  })
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | +exports.update = handleError(async (req, res) => {
 | 
	
		
			
				|  |  | +  const { no_surat, keterangan, from_date, to_date } = req.body
 | 
	
		
			
				|  |  | +  let { pelanggaran_id } = req.body
 | 
	
		
			
				|  |  | +  const { sanksi_id } = req.params
 | 
	
		
			
				|  |  | +  const files = req.files
 | 
	
		
			
				|  |  | +  const user = req.user
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +  const isValid = validate(res, req.body, {
 | 
	
		
			
				|  |  | +    no_surat: 'string',
 | 
	
		
			
				|  |  | +    keterangan: 'string',
 | 
	
		
			
				|  |  | +    pelanggaran_id: 'string',
 | 
	
		
			
				|  |  | +    from_date: 'string',
 | 
	
		
			
				|  |  | +    to_date: 'string',
 | 
	
		
			
				|  |  | +  })
 | 
	
		
			
				|  |  | +  if (!isValid) return
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +  const sanksi = await cekSatuDataSanksi(res, user, sanksi_id, { all: true })
 | 
	
		
			
				|  |  | +  if (!sanksi) return
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +  pelanggaran_id = await cekBanyakDataPelanggaran(res, pelanggaran_id)
 | 
	
		
			
				|  |  | +  if (!pelanggaran_id) return
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +  // const sanksi = await sanksiModel.findOne({ laporan: laporan_id })
 | 
	
		
			
				|  |  | +  // if (sanksi) {
 | 
	
		
			
				|  |  | +  //   return response.error(res, {
 | 
	
		
			
				|  |  | +  //     message: 'Sanksi sudah ada',
 | 
	
		
			
				|  |  | +  //   })
 | 
	
		
			
				|  |  | +  // }
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +  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.updateOne(
 | 
	
		
			
				|  |  | +    { _id: sanksi._id },
 | 
	
		
			
				|  |  | +    {
 | 
	
		
			
				|  |  | +      perubahan_sanksi: {
 | 
	
		
			
				|  |  | +        no_surat,
 | 
	
		
			
				|  |  | +        pelanggaran: pelanggaran_id,
 | 
	
		
			
				|  |  | +        keterangan,
 | 
	
		
			
				|  |  | +        dokumen: dokumen_id,
 | 
	
		
			
				|  |  | +        masa_berlaku: {
 | 
	
		
			
				|  |  | +          from_date,
 | 
	
		
			
				|  |  | +          to_date,
 | 
	
		
			
				|  |  | +        },
 | 
	
		
			
				|  |  | +      },
 | 
	
		
			
				|  |  | +    }
 | 
	
		
			
				|  |  | +  )
 | 
	
		
			
				|  |  | +  // await laporanModel.findByIdAndUpdate(laporan._id, {
 | 
	
		
			
				|  |  | +  //   sanksi: data._id,
 | 
	
		
			
				|  |  | +  //   // aktif: false,
 | 
	
		
			
				|  |  | +  // })
 | 
	
		
			
				|  |  | +  await pemantauanModel.create({
 | 
	
		
			
				|  |  | +    laporan: sanksi.laporan._id,
 | 
	
		
			
				|  |  | +    sanksi: sanksi._id,
 | 
	
		
			
				|  |  | +    action: 'UPDATE SANKSI',
 | 
	
		
			
				|  |  | +    pt_id: sanksi.laporan.pt.id,
 | 
	
		
			
				|  |  | +    user: user._id,
 | 
	
		
			
				|  |  | +    keterangan: 'Melakukan Perubahan Sanksi',
 | 
	
		
			
				|  |  | +    dokumen: dokumen_id,
 | 
	
		
			
				|  |  | +  })
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +  return response.success(res, {
 | 
	
		
			
				|  |  | +    message: 'Berhasil merubah Sanksi',
 | 
	
		
			
				|  |  | +    data,
 | 
	
		
			
				|  |  | +  })
 | 
	
		
			
				|  |  | +})
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  |  exports.getAll = handleError(async (req, res) => {
 | 
	
		
			
				|  |  |    const user = req.user
 | 
	
		
			
				|  |  |    const {
 |