From 712280d76703409b1528def75d14521e5b78dbaf Mon Sep 17 00:00:00 2001 From: adesyawal <52590145+adesyawal@users.noreply.github.com> Date: Tue, 2 Jun 2026 13:48:49 +0700 Subject: [PATCH] Remove Toleransi Keterlambatan 15 Menit --- .../medifirst2000/constants/Master.java | 1 + .../impl/MonitoringAbsenServiceImpl.java | 144 +++++++++++++----- 2 files changed, 111 insertions(+), 34 deletions(-) diff --git a/jasamedika-business/src/main/java/com/jasamedika/medifirst2000/constants/Master.java b/jasamedika-business/src/main/java/com/jasamedika/medifirst2000/constants/Master.java index 0ae7b818..c89efa51 100644 --- a/jasamedika-business/src/main/java/com/jasamedika/medifirst2000/constants/Master.java +++ b/jasamedika-business/src/main/java/com/jasamedika/medifirst2000/constants/Master.java @@ -276,6 +276,7 @@ public final class Master { public static final class MonitoringAbsensi { public static final Integer BATAS_MULTI_FINGERPRINT = 10; // 10_Menit public static final Long BATAS_TERLAMBAT = 15L; // 15_Menit + public static final Long BATAS_TERLAMBAT_01062026 = 0L; // 15_Menit } public static final class NilaiKelompokJabatan { 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 bc2510ff..72bb7c0b 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 @@ -512,8 +512,15 @@ public class MonitoringAbsenServiceImpl extends BaseVoServiceImpl implements Mon if (((Integer) jamEfektif.get("hariKerja")) != 0) { harikerja += (Integer) jamEfektif.get("hariKerja"); kehadiran.put("pulangAwal", reduceTime(jadwalPulang, absensiDate)); - if (terlambat > 15) { - kehadiran.put("terlambat", terlambat); + + if((absensiMasuk.before(new Date(1780272000000L)) || absensiMasuk.equals(new Date(1780272000000L)))){ + if (terlambat > Master.MonitoringAbsensi.BATAS_TERLAMBAT) { + kehadiran.put("terlambat", terlambat); + } + }else{ + if (terlambat > Master.MonitoringAbsensi.BATAS_TERLAMBAT_01062026) { + kehadiran.put("terlambat", terlambat); + } } } } @@ -1046,11 +1053,21 @@ public class MonitoringAbsenServiceImpl extends BaseVoServiceImpl implements Mon dataPM.put("absensiMasuk", sdf.format(time)); terlambat = reduceTime(absensiDate, jadwalMasuk); absensiMasuk = absensiDate; - if (terlambat > Master.MonitoringAbsensi.BATAS_TERLAMBAT) { - jumlahCountTerlambat += 1; - jumlahTerlambat += terlambat; - dataPM.put("terlambat", terlambat); - dataPM.put("telat", terlambat.toString()); + + if((absensiMasuk.before(new Date(1780272000000L)) || absensiMasuk.equals(new Date(1780272000000L)))){ + if (terlambat > Master.MonitoringAbsensi.BATAS_TERLAMBAT) { + jumlahCountTerlambat += 1; + jumlahTerlambat += terlambat; + dataPM.put("terlambat", terlambat); + dataPM.put("telat", terlambat.toString()); + } + }else{ + if (terlambat > Master.MonitoringAbsensi.BATAS_TERLAMBAT_01062026) { + jumlahCountTerlambat += 1; + jumlahTerlambat += terlambat; + dataPM.put("terlambat", terlambat); + dataPM.put("telat", terlambat.toString()); + } } } else if (count == index) { dataPM.put("absensiPulang", sdf.format(time)); @@ -1198,12 +1215,23 @@ public class MonitoringAbsenServiceImpl extends BaseVoServiceImpl implements Mon data.put("absensiMasuk", sdf.format(time)); terlambat = reduceTime(absensiDate, jadwalMasuk); absensiMasuk = absensiDate; - if (terlambat > Master.MonitoringAbsensi.BATAS_TERLAMBAT) { - jumlahCountTerlambat += 1; - jumlahTerlambat += terlambat; - data.put("terlambat", terlambat); - data.put("telat", terlambat.toString()); + + if((absensiMasuk.before(new Date(1780272000000L)) || absensiMasuk.equals(new Date(1780272000000L)))){ + if (terlambat > Master.MonitoringAbsensi.BATAS_TERLAMBAT) { + jumlahCountTerlambat += 1; + jumlahTerlambat += terlambat; + data.put("terlambat", terlambat); + data.put("telat", terlambat.toString()); + } + }else{ + if (terlambat > Master.MonitoringAbsensi.BATAS_TERLAMBAT_01062026) { + jumlahCountTerlambat += 1; + jumlahTerlambat += terlambat; + data.put("terlambat", terlambat); + data.put("telat", terlambat.toString()); + } } + } else if (count == index) { data.put("absensiPulang", sdf.format(time)); kelebihanJamKerja = reduceTime(absensiDate, jadwalPulang); @@ -1782,11 +1810,21 @@ public class MonitoringAbsenServiceImpl extends BaseVoServiceImpl implements Mon } terlambat = reduceTime(absensiDate, jadwalMasuk); absensiMasuk = absensiDate; - if (terlambat > Master.MonitoringAbsensi.BATAS_TERLAMBAT) { - jumlahCountTerlambat += 1; - jumlahTerlambat += terlambat; - dataPM.put("terlambat", terlambat); - dataPM.put("telat", terlambat.toString()); + + if((absensiMasuk.before(new Date(1780272000000L)) || absensiMasuk.equals(new Date(1780272000000L)))){ + if (terlambat > Master.MonitoringAbsensi.BATAS_TERLAMBAT) { + jumlahCountTerlambat += 1; + jumlahTerlambat += terlambat; + dataPM.put("terlambat", terlambat); + dataPM.put("telat", terlambat.toString()); + } + }else{ + if (terlambat > Master.MonitoringAbsensi.BATAS_TERLAMBAT_01062026) { + jumlahCountTerlambat += 1; + jumlahTerlambat += terlambat; + dataPM.put("terlambat", terlambat); + dataPM.put("telat", terlambat.toString()); + } } } else if (count == index) { listTrNo.add(Integer.parseInt(temp.get("tr_no").toString())); @@ -2091,12 +2129,23 @@ public class MonitoringAbsenServiceImpl extends BaseVoServiceImpl implements Mon } terlambat = reduceTime(absensiDate, jadwalMasuk); absensiMasuk = absensiDate; - if (terlambat > Master.MonitoringAbsensi.BATAS_TERLAMBAT) { - jumlahCountTerlambat += 1; - jumlahTerlambat += terlambat; - data.put("terlambat", terlambat); - data.put("telat", terlambat.toString()); + + if((absensiMasuk.before(new Date(1780272000000L)) || absensiMasuk.equals(new Date(1780272000000L)))){ + if (terlambat > Master.MonitoringAbsensi.BATAS_TERLAMBAT) { + jumlahCountTerlambat += 1; + jumlahTerlambat += terlambat; + data.put("terlambat", terlambat); + data.put("telat", terlambat.toString()); + } + }else{ + if (terlambat > Master.MonitoringAbsensi.BATAS_TERLAMBAT_01062026) { + jumlahCountTerlambat += 1; + jumlahTerlambat += terlambat; + data.put("terlambat", terlambat); + data.put("telat", terlambat.toString()); + } } + } else if (count == index) { listTrNo.add(Integer.parseInt(temp.get("tr_no").toString())); data.put("absensiPulang", sdf.format(time)); @@ -3662,10 +3711,19 @@ public class MonitoringAbsenServiceImpl extends BaseVoServiceImpl implements Mon kehadiran.put("pulangAwal", reduceTime(jadwalPulang, absensiDate)); kehadiran.put("pulangCepat", (reduceTime(jadwalPulang, absensiDate)).toString()); jumlahPulangAwal += reduceTime(jadwalPulang, absensiDate); - if (terlambat > 15) { - jumlahTerlambat += terlambat; - kehadiran.put("terlambat", terlambat); - kehadiran.put("telat", terlambat.toString()); + + if((absensiMasuk.before(new Date(1780272000000L)) || absensiMasuk.equals(new Date(1780272000000L)))){ + if (terlambat > Master.MonitoringAbsensi.BATAS_TERLAMBAT) { + jumlahTerlambat += terlambat; + kehadiran.put("terlambat", terlambat); + kehadiran.put("telat", terlambat.toString()); + } + }else{ + if (terlambat > Master.MonitoringAbsensi.BATAS_TERLAMBAT_01062026) { + jumlahTerlambat += terlambat; + kehadiran.put("terlambat", terlambat); + kehadiran.put("telat", terlambat.toString()); + } } if (CommonUtil.isNotNullOrEmpty(data.get("idKelompokShiftKerja"))) { @@ -4204,10 +4262,19 @@ public class MonitoringAbsenServiceImpl extends BaseVoServiceImpl implements Mon kehadiran.put("pulangAwal", reduceTime(jadwalPulang, absensiDate)); kehadiran.put("pulangCepat", (reduceTime(jadwalPulang, absensiDate)).toString()); jumlahPulangAwal += reduceTime(jadwalPulang, absensiDate); - if (terlambat > 15) { - jumlahTerlambat += terlambat; - kehadiran.put("terlambat", terlambat); - kehadiran.put("telat", terlambat.toString()); + + if((absensiMasuk.before(new Date(1780272000000L)) || absensiMasuk.equals(new Date(1780272000000L)))){ + if (terlambat > Master.MonitoringAbsensi.BATAS_TERLAMBAT) { + jumlahTerlambat += terlambat; + kehadiran.put("terlambat", terlambat); + kehadiran.put("telat", terlambat.toString()); + } + }else{ + if (terlambat > Master.MonitoringAbsensi.BATAS_TERLAMBAT_01062026) { + jumlahTerlambat += terlambat; + kehadiran.put("terlambat", terlambat); + kehadiran.put("telat", terlambat.toString()); + } } if (CommonUtil.isNotNullOrEmpty(data.get("idKelompokShiftKerja"))) { @@ -4585,10 +4652,19 @@ public class MonitoringAbsenServiceImpl extends BaseVoServiceImpl implements Mon data.put("pulangAwal", reduceTime(jadwalPulang, absensiDate)); data.put("pulangCepat", (reduceTime(jadwalPulang, absensiDate)).toString()); jumlahPulangAwal += reduceTime(jadwalPulang, absensiDate); - if (terlambat > 15) { - jumlahTerlambat += terlambat; - data.put("terlambat", terlambat); - data.put("telat", terlambat.toString()); + + if((absensiMasuk.before(new Date(1780272000000L)) || absensiMasuk.equals(new Date(1780272000000L)))){ + if (terlambat > Master.MonitoringAbsensi.BATAS_TERLAMBAT) { + jumlahTerlambat += terlambat; + data.put("terlambat", terlambat); + data.put("telat", terlambat.toString()); + } + }else{ + if (terlambat > Master.MonitoringAbsensi.BATAS_TERLAMBAT_01062026) { + jumlahTerlambat += terlambat; + data.put("terlambat", terlambat); + data.put("telat", terlambat.toString()); + } } if (CommonUtil.isNotNullOrEmpty(data.get("idKelompokShiftKerja"))) {