From 8482eab951905eaca1f9f5ed0432188d8c8cfdab Mon Sep 17 00:00:00 2001 From: adesyawal <52590145+adesyawal@users.noreply.github.com> Date: Tue, 6 Jan 2026 09:34:57 +0700 Subject: [PATCH] Bug Fixing Monitor Absen --- .../impl/MonitoringAbsenServiceImpl.java | 44 +++++++++---------- 1 file changed, 21 insertions(+), 23 deletions(-) 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 ff3947df..53576870 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 @@ -1654,8 +1654,8 @@ public class MonitoringAbsenServiceImpl extends BaseVoServiceImpl implements Mon e.printStackTrace(); } - if (CommonUtil.isNotNullOrEmpty(data.get("namaShift")) && ((data.get("namaShift").equals("Pagi Malam")) || (data.get("namaShift").equals("Non Shift MOD")))) { - //if (CommonUtil.isNotNullOrEmpty(data.get("namaShift")) && (data.get("namaShift").equals("Non Shift MOD"))) { + if (CommonUtil.isNotNullOrEmpty(data.get("namaShift")) && ((data.get("namaShift").equals("Pagi Malam")) + || (data.get("namaShift").equals("Non Shift MOD")))) { try { List> listAbsensiPagi = new ArrayList<>(); List> listAbsensiPM = new ArrayList<>(); @@ -1806,11 +1806,11 @@ public class MonitoringAbsenServiceImpl extends BaseVoServiceImpl implements Mon Map jamEfektif = null; if (i == 1) { - jamEfektif = jamEfektif(absensiDate, absensiMasuk, jadwalPulang, jadwalMasuk, (Integer) data.get("idKelompokShiftKerja"), waktuIstirahatPagi, "Pagi"); - //jamEfektif = jamEfektifFactorRate((float) data.get("factorRate"), "Pagi"); + //jamEfektif = jamEfektif(absensiDate, absensiMasuk, jadwalPulang, jadwalMasuk, (Integer) data.get("idKelompokShiftKerja"), waktuIstirahatPagi, "Pagi"); + jamEfektif = jamEfektifFactorRate((float) data.get("factorRate"), "Pagi"); } else if (i == 2) { - jamEfektif = jamEfektif(absensiDate, absensiMasuk, jadwalPulang, jadwalMasuk, (Integer) data.get("idKelompokShiftKerja"), waktuIstirahatMalam, "Malam"); - //jamEfektif = jamEfektifFactorRate((float) data.get("factorRate"), "Malam"); + //jamEfektif = jamEfektif(absensiDate, absensiMasuk, jadwalPulang, jadwalMasuk, (Integer) data.get("idKelompokShiftKerja"), waktuIstirahatMalam, "Malam"); + jamEfektif = jamEfektifFactorRate((float) data.get("factorRate"), "Malam"); } if (CommonUtil.isNotNullOrEmpty(jamEfektif)) { @@ -1890,9 +1890,9 @@ public class MonitoringAbsenServiceImpl extends BaseVoServiceImpl implements Mon data.put("terlambat", "0"); data.put("telat", (long) 0); } - } catch (ParseException e) { + } catch (ParseException e) { e.printStackTrace(); - + } } else if ((CommonUtil.isNotNullOrEmpty(data.get("absensiPulang")) && CommonUtil.isNullOrEmpty(data.get("absensiMasuk"))) && (CommonUtil.isNotNullOrEmpty(jamMasuk) && CommonUtil.isNotNullOrEmpty(jamPulang))) { absenTunggal++; @@ -2018,18 +2018,18 @@ public class MonitoringAbsenServiceImpl extends BaseVoServiceImpl implements Mon dataPM.put("verifikasi", "X"); } } - - dataPM.put("jamEfektif", jamEf); //xxx - dataPM.put("jam_efektif", jamEf); //xxx - dataPM.put("kelebihanJamKerja", kelebihanJamKerja); + + data.put("jamEfektif", jamEf); + data.put("jam_efektif", jamEf); + data.put("kelebihanJamKerja", kelebihanJamKerja); rsMap.put("jumlahCountKelebihanJamKerja", jumlahCountKelebihanJamKerja); rsMap.put("jumlahKelebihanJamKerja", jumlahKelebihanJamKerja / 60); rsMap.put("jumlahKelebihanMenitKerja", jumlahKelebihanJamKerja); - dataPM.put("jumlahTerlambat", jumlahTerlambat.toString()); //xxx - dataPM.put("jumlahJamEfektif", jumlahJamEfektif.toString()); //xxx - dataPM.put("jumlahPulangAwal", jumlahPulangAwal.toString()); //xxx - dataPM.put("alasan", alasanCuti); //xxx - listkehadiran.add(dataPM); + data.put("jumlahTerlambat", jumlahTerlambat.toString()); + data.put("jumlahJamEfektif", jumlahJamEfektif.toString()); + data.put("jumlahPulangAwal", jumlahPulangAwal.toString()); + data.put("alasan", alasanCuti); + listkehadiran.add(data); } rsMap.put("jumlahKelebihanJamKerja", jumlahKelebihanJamKerja / 60); rsMap.put("jumlahKelebihanMenitKerja", jumlahKelebihanJamKerja); @@ -2368,19 +2368,17 @@ public class MonitoringAbsenServiceImpl extends BaseVoServiceImpl implements Mon if (CommonUtil.isNotNullOrEmpty(listkehadiran) && CommonUtil.isNotNullOrEmpty(groupKodeShift)) { if (Arrays.asList(listKetidakhadiran).contains(groupKodeShift)) { - long jumlah = listkehadiran.stream().filter( + dataShift.put(groupKodeShift, listkehadiran.stream().filter( p -> p.containsKey("kodeShift") && groupKodeShift.equals(p.get("kodeShift")) - ).count(); - dataShift.put(groupKodeShift, jumlah); + ).count()); }else{ - long jumlah = listkehadiran.stream().filter( + dataShift.put(groupKodeShift, listkehadiran.stream().filter( p -> p.containsKey("kodeShift") && groupKodeShift.equals(p.get("kodeShift")) && !p.get("absensiMasuk").equals("-") && !p.get("absensiPulang").equals("-") - ).count(); - dataShift.put(groupKodeShift, jumlah); + ).count()); } } }