diff --git a/jasamedika-business/src/main/java/com/jasamedika/medifirst2000/service/impl/MonitoringAbsenServiceImpl.java b/jasamedika-business/src/main/java/com/jasamedika/medifirst2000/service/impl/MonitoringAbsenServiceImpl.java index 9b0c4c29..b76c2e94 100644 --- a/jasamedika-business/src/main/java/com/jasamedika/medifirst2000/service/impl/MonitoringAbsenServiceImpl.java +++ b/jasamedika-business/src/main/java/com/jasamedika/medifirst2000/service/impl/MonitoringAbsenServiceImpl.java @@ -1463,6 +1463,7 @@ public class MonitoringAbsenServiceImpl extends BaseVoServiceImpl implements Mon String startDate, String endDate) { Map result = new HashMap<>(); List> listRs = new ArrayList>(); + List listIdPegawaiFilter = new ArrayList<>(); List listIdPegawai = new ArrayList<>(); if (CommonUtil.isNotNullOrEmpty(idPegawai)) { @@ -1475,6 +1476,12 @@ public class MonitoringAbsenServiceImpl extends BaseVoServiceImpl implements Mon } for (Integer id : listIdPegawai) { + if (!listIdPegawaiFilter.contains(id)) { + listIdPegawaiFilter.add(id); + } + } + + for (Integer id : listIdPegawaiFilter) { String idFinger = pegawaiDao.getidFinger(id); Map rsMap = new HashMap(); List> listkehadiran = new ArrayList>(); diff --git a/jasamedika-business/src/main/java/com/jasamedika/medifirst2000/service/impl/ReportServiceImpl.java b/jasamedika-business/src/main/java/com/jasamedika/medifirst2000/service/impl/ReportServiceImpl.java index 5a1260d4..88e41a70 100644 --- a/jasamedika-business/src/main/java/com/jasamedika/medifirst2000/service/impl/ReportServiceImpl.java +++ b/jasamedika-business/src/main/java/com/jasamedika/medifirst2000/service/impl/ReportServiceImpl.java @@ -425,10 +425,18 @@ public class ReportServiceImpl extends BaseVoServiceImpl implements ReportServic @Override public List> generateLapRekapitulasiKehadiran(Integer idRuangan, String startDate, String endDate) { + List listIdPegawaiFilter = new ArrayList<>(); Map temp = new HashMap(); List> listkehadiran = new ArrayList>(); + List listIdPegawai = monitoringAbsenDao.findPegawaiAktifDanKaryawanByUnitKerja(idRuangan); - for (Integer idPegawai : listIdPegawai) { + for (Integer id : listIdPegawai) { + if (!listIdPegawaiFilter.contains(id)) { + listIdPegawaiFilter.add(id); + } + } + + for (Integer idPegawai : listIdPegawaiFilter) { temp = monitoringAbsenService.rekapitulasiKehadiranByPegawai(idPegawai, startDate, endDate); if (CommonUtil.isNotNullOrEmpty(temp)) { listkehadiran.add(temp); diff --git a/jasamedika-reporting/src/main/java/com/jasamedika/medifirst2000/controller/ReportingController.java b/jasamedika-reporting/src/main/java/com/jasamedika/medifirst2000/controller/ReportingController.java index f5d28489..cef18eac 100644 --- a/jasamedika-reporting/src/main/java/com/jasamedika/medifirst2000/controller/ReportingController.java +++ b/jasamedika-reporting/src/main/java/com/jasamedika/medifirst2000/controller/ReportingController.java @@ -4634,15 +4634,31 @@ public class ReportingController extends LocaleController Map kehadiran = new HashMap(); if (CommonUtil.isNotNullOrEmpty(subUnitKerja) && CommonUtil.isNullOrEmpty(idPegawai)) { + List listIdPegawaiFilter = new ArrayList<>(); + List listIdPegawai = monitoringAbsenDao .findPegawaiAktifDanKaryawanByUnitKerjaAndSubUnitKerja(unitKerja, subUnitKerja); for (Integer id : listIdPegawai) { + if (!listIdPegawaiFilter.contains(id)) { + listIdPegawaiFilter.add(id); + } + } + + for (Integer id : listIdPegawaiFilter) { kehadiran = monitoringAbsenService.jumlahKehadiran(null, null, id, startDate, endDate); listkehadiran.addAll((List>) kehadiran.get("listkehadiran")); } } else if (CommonUtil.isNullOrEmpty(subUnitKerja) && CommonUtil.isNullOrEmpty(idPegawai)) { + List listIdPegawaiFilter = new ArrayList<>(); + List listIdPegawai = monitoringAbsenDao.findPegawaiAktifDanKaryawanByUnitKerja(unitKerja); for (Integer id : listIdPegawai) { + if (!listIdPegawaiFilter.contains(id)) { + listIdPegawaiFilter.add(id); + } + } + + for (Integer id : listIdPegawaiFilter) { kehadiran = monitoringAbsenService.jumlahKehadiran(null, null, id, startDate, endDate); listkehadiran.addAll((List>) kehadiran.get("listkehadiran")); }