|  | @@ -20,6 +20,7 @@ exports.laporan = handleError(async (req, res) => {
 | 
	
		
			
				|  |  |      laporanTahun,
 | 
	
		
			
				|  |  |      bulan,
 | 
	
		
			
				|  |  |      tahun,
 | 
	
		
			
				|  |  | +    listJadwal,
 | 
	
		
			
				|  |  |    } = req.query
 | 
	
		
			
				|  |  |    if (jumlahLaporan == 'true') {
 | 
	
		
			
				|  |  |      const delegasi = await cekBanyakDataLaporan(user, { delegasi: true })
 | 
	
	
		
			
				|  | @@ -115,8 +116,7 @@ exports.laporan = handleError(async (req, res) => {
 | 
	
		
			
				|  |  |      )
 | 
	
		
			
				|  |  |    } else if (laporanTahun == 'true') {
 | 
	
		
			
				|  |  |      const temp = new Date()
 | 
	
		
			
				|  |  | -    let date = {}
 | 
	
		
			
				|  |  | -    date = {
 | 
	
		
			
				|  |  | +    let date = {
 | 
	
		
			
				|  |  |        $expr: {
 | 
	
		
			
				|  |  |          $eq: [{ $year: '$createdAt' }, parseInt(tahun) || temp.getFullYear()],
 | 
	
		
			
				|  |  |        },
 | 
	
	
		
			
				|  | @@ -141,6 +141,49 @@ exports.laporan = handleError(async (req, res) => {
 | 
	
		
			
				|  |  |      )
 | 
	
		
			
				|  |  |    }
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | +  if (listJadwal == 'true') {
 | 
	
		
			
				|  |  | +    if ((tahun && bulan) || bulan) {
 | 
	
		
			
				|  |  | +      const temp = new Date()
 | 
	
		
			
				|  |  | +      let date = {
 | 
	
		
			
				|  |  | +        $expr: {
 | 
	
		
			
				|  |  | +          $and: [
 | 
	
		
			
				|  |  | +            { $eq: [{ $month: '$jadwal.dari_tanggal' }, parseInt(bulan)] },
 | 
	
		
			
				|  |  | +            {
 | 
	
		
			
				|  |  | +              $eq: [
 | 
	
		
			
				|  |  | +                { $year: '$jadwal.dari_tanggal' },
 | 
	
		
			
				|  |  | +                parseInt(tahun) || temp.getFullYear(),
 | 
	
		
			
				|  |  | +              ],
 | 
	
		
			
				|  |  | +            },
 | 
	
		
			
				|  |  | +          ],
 | 
	
		
			
				|  |  | +        },
 | 
	
		
			
				|  |  | +      }
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +      data.list_jadwal = await dataLaporanAggregate(
 | 
	
		
			
				|  |  | +        user,
 | 
	
		
			
				|  |  | +        {
 | 
	
		
			
				|  |  | +          ...date,
 | 
	
		
			
				|  |  | +          jadwal: {
 | 
	
		
			
				|  |  | +            $ne: null,
 | 
	
		
			
				|  |  | +            $exists: true,
 | 
	
		
			
				|  |  | +          },
 | 
	
		
			
				|  |  | +        },
 | 
	
		
			
				|  |  | +        {
 | 
	
		
			
				|  |  | +          _id: {
 | 
	
		
			
				|  |  | +            bulan: {
 | 
	
		
			
				|  |  | +              $month: '$jadwal.dari_tanggal',
 | 
	
		
			
				|  |  | +            },
 | 
	
		
			
				|  |  | +            tahun: {
 | 
	
		
			
				|  |  | +              $year: '$jadwal.dari_tanggal',
 | 
	
		
			
				|  |  | +            },
 | 
	
		
			
				|  |  | +          },
 | 
	
		
			
				|  |  | +          jadwal: {
 | 
	
		
			
				|  |  | +            $push: '$jadwal',
 | 
	
		
			
				|  |  | +          },
 | 
	
		
			
				|  |  | +        }
 | 
	
		
			
				|  |  | +      )
 | 
	
		
			
				|  |  | +    }
 | 
	
		
			
				|  |  | +  }
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  |    return response.success(res, {
 | 
	
		
			
				|  |  |      message: 'Berhasil menganalisis data',
 | 
	
		
			
				|  |  |      data,
 |