Merge branch 'dev/pegawai/cuti' into dev/no-cron
This commit is contained in:
commit
119d15ef43
@ -56,7 +56,8 @@ public interface ListTanggalCutiDao extends PagingAndSortingRepository<ListTangg
|
||||
@Query("select tc from ListTanggalCuti tc " + "inner join tc.planningPegawaiStatus ps "
|
||||
+ "where tc.statusEnabled is true " + "and ps.statusEnabled is true " + "and ps.noSkId is null "
|
||||
+ "and ps.approvalStatus not in (1, 3) " + "and ps.pegawaiId = :idPegawai "
|
||||
+ "and ps.statusPegawaiPlanId = :idJenisPermohonan " + "and tc.tgl between :tglAwal and :tglAkhir")
|
||||
+ "and ps.statusPegawaiPlanId = :idJenisPermohonan " + "and tc.tgl between :tglAwal and :tglAkhir "
|
||||
+ "and ps.tglPengajuan between :tglAwal and :tglAkhir")
|
||||
List<ListTanggalCuti> notApprovedByPermohonan(@Param("idPegawai") Integer idPegawai,
|
||||
@Param("idJenisPermohonan") Integer idJenisPermohonan, @Param("tglAwal") Date tglAwal,
|
||||
@Param("tglAkhir") Date tglAkhir);
|
||||
|
||||
@ -287,7 +287,7 @@ public class JatahCutiDanIzinServiceImpl implements JatahCutiDanIzinService {
|
||||
if (dataCutiN2 > 0) {
|
||||
if (allCutiTerpakai >= dataCutiN2) {
|
||||
if (difCutiTerpakai(cutiTerpakaiN2, dataCutiB2)
|
||||
+ difCutiTerpakai(cutiTerpakaiN1, dataCutiB1) < 12) {
|
||||
+ difCutiTerpakai(cutiTerpakaiN1, dataCutiB1) < dataCutiN2) {
|
||||
jatahCutiTerpakaiN2 = difCutiTerpakai(cutiTerpakaiN2, dataCutiB2)
|
||||
+ difCutiTerpakai(cutiTerpakaiN1, dataCutiB1);
|
||||
} else {
|
||||
@ -295,14 +295,15 @@ public class JatahCutiDanIzinServiceImpl implements JatahCutiDanIzinService {
|
||||
}
|
||||
} else {
|
||||
if (difCutiTerpakai(cutiTerpakaiN2, dataCutiB2)
|
||||
+ difCutiTerpakai(cutiTerpakaiN1, dataCutiB1) < 12) {
|
||||
+ difCutiTerpakai(cutiTerpakaiN1, dataCutiB1) < dataCutiN2) {
|
||||
jatahCutiTerpakaiN2 = difCutiTerpakai(cutiTerpakaiN2, dataCutiB2)
|
||||
+ difCutiTerpakai(cutiTerpakaiN1, dataCutiB1);
|
||||
} else {
|
||||
jatahCutiTerpakaiN2 = allCutiTerpakai;
|
||||
}
|
||||
}
|
||||
if (difCutiTerpakai(cutiTerpakaiN2, dataCutiB2) + difCutiTerpakai(cutiTerpakaiN1, dataCutiB1) < 12) {
|
||||
if (difCutiTerpakai(cutiTerpakaiN2, dataCutiB2)
|
||||
+ difCutiTerpakai(cutiTerpakaiN1, dataCutiB1) < dataCutiN2) {
|
||||
if (difCutiTerpakai(cutiTerpakaiN2, dataCutiB2) > 0) {
|
||||
sisaCutiN2 = 0; // hangus
|
||||
} else {
|
||||
@ -561,14 +562,16 @@ public class JatahCutiDanIzinServiceImpl implements JatahCutiDanIzinService {
|
||||
.filter(PresensiHariLibur::getIsCutiBersamaDitangguhkan).collect(Collectors.toList());
|
||||
if (listPresensiCutiBersamaBisaDitangguhkan.isEmpty())
|
||||
return dto;
|
||||
List<ListTanggalCuti> listCutiTahunLaluBelumDisetujui = tanggalCutiDao
|
||||
.notApprovedByPermohonan(request.getPegawaiId(), CUTI_TAHUNAN, awalTahunLalu, akhirTahunLalu);
|
||||
int presensiCutiBersama = listPresensiTahunLalu.size();
|
||||
int jatahDitangguhkan = listPresensiCutiBersamaBisaDitangguhkan.size();
|
||||
if (presensiCutiBersama - dto.getCutiTerpakaiB1()
|
||||
- listCutiTahunLaluBelumDisetujui.size() >= jatahDitangguhkan) {
|
||||
dto.setDataCutiB(dto.getDataCutiB() + jatahDitangguhkan);
|
||||
dto.setSisaCutiB(dto.getDataCutiB() - dto.getCutiTerpakaiB());
|
||||
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 jatahDitangguhkan = listPresensiCutiBersamaBisaDitangguhkan.size();
|
||||
if (presensiCutiBersama - dto.getCutiTerpakaiB1()
|
||||
- listCutiTahunLaluBelumDisetujui.size() >= jatahDitangguhkan) {
|
||||
dto.setDataCutiB(dto.getDataCutiB() + jatahDitangguhkan);
|
||||
dto.setSisaCutiB(dto.getDataCutiB() - dto.getCutiTerpakaiB());
|
||||
}
|
||||
}
|
||||
return dto;
|
||||
}
|
||||
|
||||
@ -2052,6 +2052,9 @@ public class PermohonanStatusPegawaiImpl implements PermohonanStatusPegawaiServi
|
||||
if (vo.getKomponenIndex().getId().equals(mapDataCuti.get("komponenIndex"))
|
||||
&& vo.getTahun().equals(mapDataCuti.get("tahun").toString())) {
|
||||
jatahCutiDanIzin.setValue(vo.getValue());
|
||||
} else if (todaysYear == Integer.parseInt(vo.getTahun())
|
||||
&& todaysYear1 == Integer.parseInt(mapDataCuti.get("tahun").toString())) {
|
||||
jatahCutiDanIzin.setValue(cutiIzin.getDataCutiB1());
|
||||
} else {
|
||||
jatahCutiDanIzin.setValue(currentData.getValue());
|
||||
}
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user