diff --git a/jasamedika-business/src/main/java/com/jasamedika/medifirst2000/service/impl/PermohonanStatusPegawaiImpl.java b/jasamedika-business/src/main/java/com/jasamedika/medifirst2000/service/impl/PermohonanStatusPegawaiImpl.java index e03e333c..16c5a5f6 100644 --- a/jasamedika-business/src/main/java/com/jasamedika/medifirst2000/service/impl/PermohonanStatusPegawaiImpl.java +++ b/jasamedika-business/src/main/java/com/jasamedika/medifirst2000/service/impl/PermohonanStatusPegawaiImpl.java @@ -733,6 +733,11 @@ public class PermohonanStatusPegawaiImpl implements PermohonanStatusPegawaiServi if (dataCutiN1 - jatahCutiTerpakaiN1 >= 6 && !jCutiN1) { jumlahTglByPengajuan -= (dataHistoriCutiTerpakai + jatahCutiTerpakaiN2 + cutiTerpakaiB + cutiTerpakaiB1 + cutiTerpakaiB2); + + if (jumlahTglByPengajuan < 0) { + jumlahTglByPengajuan = 0; + } + if (jumlahTglByPengajuan > jatahCutiTerpakaiN1) { sisaCutiN1 = 6; } else { 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 36e8deda..bdd6419d 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 @@ -2149,9 +2149,10 @@ public class ReportServiceImpl extends BaseVoServiceImpl implements ReportServic List> listTgl = planningPegawaiStatusDao .getListTanggalCuti(planningPegawaiStatus.getNoRec()); - if (CommonUtil.isNotNullOrEmpty(listTgl) && (statusPegawai.getStatusPegawai().equals("Cuti Besar") - || statusPegawai.getStatusPegawai().equals("Cuti Melahirkan") - || statusPegawai.getStatusPegawai().equals("Sakit")) + if (CommonUtil.isNotNullOrEmpty(listTgl) + && (statusPegawai.getStatusPegawai().equals("Cuti Besar") + || statusPegawai.getStatusPegawai().equals("Cuti Melahirkan") + || statusPegawai.getStatusPegawai().equals("Sakit")) || statusPegawai.getStatusPegawai().equals("Cuti Alasan Penting")) { Date tglAwal = (Date) listTgl.get(0).get("tgl"); Date tglAkhir = (Date) listTgl.get(listTgl.size() - 1).get("tgl"); @@ -2162,9 +2163,10 @@ public class ReportServiceImpl extends BaseVoServiceImpl implements ReportServic String tgl = ""; int i = 1; for (Map data : listTgl) { - if (CommonUtil.isNotNullOrEmpty(listTgl) && (statusPegawai.getStatusPegawai().equals("Cuti Besar") - || statusPegawai.getStatusPegawai().equals("Cuti Melahirkan") - || statusPegawai.getStatusPegawai().equals("Sakit")) + if (CommonUtil.isNotNullOrEmpty(listTgl) + && (statusPegawai.getStatusPegawai().equals("Cuti Besar") + || statusPegawai.getStatusPegawai().equals("Cuti Melahirkan") + || statusPegawai.getStatusPegawai().equals("Sakit")) || statusPegawai.getStatusPegawai().equals("Cuti Alasan Penting")) { if (i == 1) { tgl += new SimpleDateFormat("dd-MM-yyyy").format(data.get("tgl")); @@ -2388,20 +2390,20 @@ public class ReportServiceImpl extends BaseVoServiceImpl implements ReportServic Map kaRu = pegawaiDao.findPegawaiById(idKaRu); Jabatan jabatanAtasan1 = pegawaiDao.findJabatanInternalByIdPegawai(idAtasan1, idJabatanAtasan1); Jabatan jabatanAtasan2 = pegawaiDao.findJabatanInternalByIdPegawai(idAtasan2, idJabatanAtasan2); - if (CommonUtil.isNotNullOrEmpty(atasan1)) { + if (CommonUtil.isNotNullOrEmpty(atasan1) && CommonUtil.isNotNullOrEmpty(jabatanAtasan1)) { result.put("namaAtasan", atasan1.get("nama")); result.put("jabatanAtasan", jabatanAtasan1.getNamaJabatan()); result.put("nipAtasan", atasan1.get("nipPns")); if (CommonUtil.isNullOrEmpty(atasan1.get("nipPns"))) { - result.put("nipAtasan1", atasan1.get("nip")); + result.put("nipAtasan", atasan1.get("nip")); } } - if (CommonUtil.isNotNullOrEmpty(atasan2)) { - result.put("namaAtasan2", atasan2.get("nama")); - result.put("jabatanAtasan2", jabatanAtasan2.getNamaJabatan()); - result.put("nipAtasan2", atasan2.get("nipPns")); + if (CommonUtil.isNotNullOrEmpty(atasan2) && CommonUtil.isNotNullOrEmpty(jabatanAtasan2)) { + result.put("namaAtasan", atasan2.get("nama")); + result.put("jabatanAtasan", jabatanAtasan2.getNamaJabatan()); + result.put("nipAtasan", atasan2.get("nipPns")); if (CommonUtil.isNullOrEmpty(atasan2.get("nipPns"))) { - result.put("nipAtasan2", atasan2.get("nip")); + result.put("nipAtasan", atasan2.get("nip")); } } if (CommonUtil.isNotNullOrEmpty(kaRu)) { @@ -2448,7 +2450,19 @@ public class ReportServiceImpl extends BaseVoServiceImpl implements ReportServic i++; } } - result.put("jumlahHari", i); + + if (listTgl.size() == 2) { + if (new SimpleDateFormat("dd MMMM yyyy", new Locale("in", "ID")).format(listTgl.get(0).get("tgl")) + .equals(new SimpleDateFormat("dd MMMM yyyy", new Locale("in", "ID")) + .format(listTgl.get(1).get("tgl")))) { + result.put("jumlahHari", "1"); + } else { + long diff = (((Date) listTgl.get(1).get("tgl")).getTime() + - ((Date) listTgl.get(0).get("tgl")).getTime()) / 86400000; + result.put("jumlahHari", Long.toString(diff + 1)); + } + } + result.put("endDate", tgl); result.put("listDate", tgl); if (CommonUtil.isNotNullOrEmpty(planningPegawaiStatus.getPegawai())) { diff --git a/jasamedika-reporting/src/main/webapp/WEB-INF/templates/jrxml/suratIzinSementara.jrxml b/jasamedika-reporting/src/main/webapp/WEB-INF/templates/jrxml/suratIzinSementara.jrxml index 5a81101d..4bb10690 100644 --- a/jasamedika-reporting/src/main/webapp/WEB-INF/templates/jrxml/suratIzinSementara.jrxml +++ b/jasamedika-reporting/src/main/webapp/WEB-INF/templates/jrxml/suratIzinSementara.jrxml @@ -6,7 +6,7 @@ - +