Update JatahCutiDanIzinServiceImpl.java
Penerapan TMT SK cuti 2024 menghapus jatah cuti bersama untuk cuti tahunan di tanggal cuti bersama
This commit is contained in:
parent
b64bb1d054
commit
532e1fe0ab
@ -12,6 +12,7 @@ import com.jasamedika.medifirst2000.util.DateUtil;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import java.text.ParseException;
|
||||
import java.text.SimpleDateFormat;
|
||||
import java.time.LocalDate;
|
||||
import java.util.*;
|
||||
@ -173,7 +174,14 @@ public class JatahCutiDanIzinServiceImpl implements JatahCutiDanIzinService {
|
||||
// Hitung Absen di tanggal cuti bersama
|
||||
List<String> listTglCutiBersama = mapKalenderToHariLiburDao.getTglCutiBersama(year);
|
||||
int countDataHabsen = 0;
|
||||
Date awal2024 = new Date(1704042000000L);
|
||||
for (String tglStr : listTglCutiBersama) {
|
||||
Date tglCheck;
|
||||
try {
|
||||
tglCheck = sdf.parse(tglStr);
|
||||
} catch (ParseException e) {
|
||||
tglCheck = new Date();
|
||||
}
|
||||
List<Date> dataHabsen = new ArrayList<>();
|
||||
// cek shift malam
|
||||
String tglPrev = sdf.format(java.sql.Date.valueOf(LocalDate.parse(tglStr).minusDays(1)));
|
||||
@ -206,7 +214,7 @@ public class JatahCutiDanIzinServiceImpl implements JatahCutiDanIzinService {
|
||||
} else {
|
||||
countDataHabsen += 1;
|
||||
}
|
||||
} else {
|
||||
} else if (tglCheck.before(awal2024)) {
|
||||
// cuti tahunan di tanggal cuti bersama
|
||||
List<Date> tglCutiTahunanDiTglCutiBersama = jatahCutiDanIzinDao
|
||||
.getCutiTahunanDiTglCutiBersama(CUTI_TAHUNAN, pegawaiId, tglStr);
|
||||
@ -554,6 +562,7 @@ public class JatahCutiDanIzinServiceImpl implements JatahCutiDanIzinService {
|
||||
}
|
||||
|
||||
private int tangguhkanCutiBersama(Integer cutiBersamaTerpakaiTahunLalu, JatahCutiRequest request) {
|
||||
Date awal2024 = new Date(1704042000000L);
|
||||
if (CommonUtil.isNullOrEmpty(request.getYear()))
|
||||
request.setYear(String.valueOf(DateUtil.getYear(new Date())));
|
||||
Date tahunLalu = DateUtil.getInstanceCalendar(-1);
|
||||
@ -565,13 +574,16 @@ public class JatahCutiDanIzinServiceImpl implements JatahCutiDanIzinService {
|
||||
.filter(HariLiburTerpakai::getIsCutiBersamaDitangguhkan).collect(Collectors.toList());
|
||||
if (listPresensiCutiBersamaBisaDitangguhkan.isEmpty())
|
||||
return 0;
|
||||
List<HariLiburTerpakai> listCutiDiCutiBersamaTahunLalu = tanggalCutiDao.getCutiByTahun(request.getPegawaiId(),
|
||||
LIBUR_CB, awalTahunLalu, akhirTahunLalu);
|
||||
int cutiDiCutiBersama = 0;
|
||||
if (tahunLalu.before(awal2024)) {
|
||||
List<HariLiburTerpakai> listCutiDiCutiBersamaTahunLalu = tanggalCutiDao
|
||||
.getCutiByTahun(request.getPegawaiId(), LIBUR_CB, awalTahunLalu, akhirTahunLalu);
|
||||
cutiDiCutiBersama = listCutiDiCutiBersamaTahunLalu.size();
|
||||
}
|
||||
if (DateUtil.getYear(new Date()) == Integer.parseInt(request.getYear())) {
|
||||
List<ListTanggalCuti> listCutiTahunLaluBelumDisetujui = tanggalCutiDao
|
||||
.notApprovedByPermohonan(request.getPegawaiId(), CUTI_TAHUNAN, awalTahunLalu, akhirTahunLalu);
|
||||
int presensiCutiBersama = listPresensiTahunLalu.size();
|
||||
int cutiDiCutiBersama = listCutiDiCutiBersamaTahunLalu.size();
|
||||
int sisaJatah = presensiCutiBersama + cutiDiCutiBersama - cutiBersamaTerpakaiTahunLalu;
|
||||
int jatahDitangguhkan = listPresensiCutiBersamaBisaDitangguhkan.size()
|
||||
- listCutiTahunLaluBelumDisetujui.size();
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user