From 0eb9db89125dc221706ea82690e93928821ff272 Mon Sep 17 00:00:00 2001 From: salmanoe Date: Sun, 28 Mar 2021 19:43:13 +0700 Subject: [PATCH] - perbaikan cetakan cuti untuk aturan golongan pns dan dirut - perbaikan konstanta variabel di service dashboard kinerja --- .../medifirst2000/constants/Master.java | 5 ++++ .../medifirst2000/service/ReportService.java | 3 ++- .../impl/LogbookKinerjaServiceImpl.java | 24 +++++++++++-------- .../service/impl/ReportServiceImpl.java | 5 +++- .../controller/ReportingController.java | 20 +++++++++------- 5 files changed, 37 insertions(+), 20 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 21f6cb5c..bfb26050 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 @@ -241,6 +241,11 @@ public class Master { public static final class Remunerasi { public static final Integer[] JENIS_INDIKATOR = { 1, 2, 3 }; + + public static final Double BOBOT_KUANTITAS = 40.0; + public static final Double BOBOT_KUALITAS = 30.0; + public static final Double BOBOT_PERILAKU = 30.0; + public static final Double IKI_STANDAR = 1.0; } public static final class Ruangan { diff --git a/jasamedika-business/src/main/java/com/jasamedika/medifirst2000/service/ReportService.java b/jasamedika-business/src/main/java/com/jasamedika/medifirst2000/service/ReportService.java index b14e0f1d..0dd6071b 100644 --- a/jasamedika-business/src/main/java/com/jasamedika/medifirst2000/service/ReportService.java +++ b/jasamedika-business/src/main/java/com/jasamedika/medifirst2000/service/ReportService.java @@ -90,7 +90,8 @@ public interface ReportService extends BaseVoService Integer idAtasan1, Integer idAtasan2, Integer kaRu, Integer idJabatanAtasan1, Integer idJabatanAtasan2); public Map generateLapPermohonanCuti(String noRecPlanning, Integer idJabatan, Integer idUnitKerja, - Integer idAtasan1, Integer idAtasan2, Integer kaRu, Integer idJabatanAtasan1, Integer idJabatanAtasan2); + Integer idAtasan1, Integer idAtasan2, Integer kaRu, Integer idJabatanAtasan1, Integer idJabatanAtasan2, + String atasanDireksi); public Map generateLapPermohonanCuti(String noRecPlanning, String atasan1, String nipPnsAtasan1, String jabatanAtasan1, String atasan2, String nipPnsAtasan2, String jabatanAtasan2, Integer idKaRu); diff --git a/jasamedika-business/src/main/java/com/jasamedika/medifirst2000/service/impl/LogbookKinerjaServiceImpl.java b/jasamedika-business/src/main/java/com/jasamedika/medifirst2000/service/impl/LogbookKinerjaServiceImpl.java index 75c3277a..fa766d73 100644 --- a/jasamedika-business/src/main/java/com/jasamedika/medifirst2000/service/impl/LogbookKinerjaServiceImpl.java +++ b/jasamedika-business/src/main/java/com/jasamedika/medifirst2000/service/impl/LogbookKinerjaServiceImpl.java @@ -354,19 +354,22 @@ public class LogbookKinerjaServiceImpl extends BaseVoServiceImpl implements Logb if (ji.equals("Kuantitas")) { totAllPersen += hasil; - jenisIndikator.put("persenCapaian", (100.0 / 40.0) * hasil); + jenisIndikator.put("persenCapaian", (100.0 / Master.Remunerasi.BOBOT_KUANTITAS) * hasil); jenisIndikator.put("persenCapaianDibulatkan", - new BigDecimal(Double.valueOf((100.0 / 40.0) * hasil)).setScale(2, RoundingMode.HALF_UP)); + new BigDecimal(Double.valueOf((100.0 / Master.Remunerasi.BOBOT_KUANTITAS) * hasil)).setScale(2, + RoundingMode.HALF_UP)); } else if (ji.equals("Kualitas")) { totAllPersen += hasil; - jenisIndikator.put("persenCapaian", (100.0 / 30.0) * hasil); + jenisIndikator.put("persenCapaian", (100.0 / Master.Remunerasi.BOBOT_KUALITAS) * hasil); jenisIndikator.put("persenCapaianDibulatkan", - new BigDecimal(Double.valueOf((100.0 / 30.0) * hasil)).setScale(2, RoundingMode.HALF_UP)); + new BigDecimal(Double.valueOf((100.0 / Master.Remunerasi.BOBOT_KUALITAS) * hasil)).setScale(2, + RoundingMode.HALF_UP)); } else if (ji.equals("Perilaku")) { totAllPersen += hasil; - jenisIndikator.put("persenCapaian", (100.0 / 30.0) * hasil); + jenisIndikator.put("persenCapaian", (100.0 / Master.Remunerasi.BOBOT_PERILAKU) * hasil); jenisIndikator.put("persenCapaianDibulatkan", - new BigDecimal(Double.valueOf((100.0 / 30.0) * hasil)).setScale(2, RoundingMode.HALF_UP)); + new BigDecimal(Double.valueOf((100.0 / Master.Remunerasi.BOBOT_PERILAKU) * hasil)).setScale(2, + RoundingMode.HALF_UP)); } jenisIndikator.put("data", data); @@ -374,10 +377,11 @@ public class LogbookKinerjaServiceImpl extends BaseVoServiceImpl implements Logb } result.put("listJenisIndikator", listJenisIndikator); - result.put("rupiahCapaian", totAllPersen / 100 * nilaiJabatan * 3 * pir); - result.put("rupiahCapaianFormat", kursINA.format(totAllPersen / 100 * nilaiJabatan * 3 * pir).toString()); - result.put("rupiahTarget", nilaiJabatan * 3 * pir); - result.put("rupiahTargetFormat", kursINA.format(nilaiJabatan * 3 * pir).toString()); + result.put("rupiahCapaian", totAllPersen / 100.0 * nilaiJabatan * Master.Remunerasi.IKI_STANDAR * pir); + result.put("rupiahCapaianFormat", + kursINA.format(totAllPersen / 100.0 * nilaiJabatan * Master.Remunerasi.IKI_STANDAR * pir).toString()); + result.put("rupiahTarget", nilaiJabatan * Master.Remunerasi.IKI_STANDAR * pir); + result.put("rupiahTargetFormat", kursINA.format(nilaiJabatan * Master.Remunerasi.IKI_STANDAR * pir).toString()); result.put("persenCapaian", totAllPersen); result.put("persenCapaianDibulatkan", new BigDecimal(Double.valueOf(totAllPersen)).setScale(2, RoundingMode.HALF_UP)); 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 96c5fddd..fa143395 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 @@ -2057,7 +2057,8 @@ public class ReportServiceImpl extends BaseVoServiceImpl implements ReportServic @Override public Map generateLapPermohonanCuti(String noRecPlanning, Integer idJabatan, Integer idUnitKerja, - Integer idAtasan1, Integer idAtasan2, Integer idKaRu, Integer idJabatanAtasan1, Integer idJabatanAtasan2) { + Integer idAtasan1, Integer idAtasan2, Integer idKaRu, Integer idJabatanAtasan1, Integer idJabatanAtasan2, + String atasanDireksi) { Map result = new HashMap(); // PegawaiHistoriRekapIndex pegawaiHistoriRekapIndex= // pegawaiHistoriRekapIndexDao.getPegawaiHistoriRekapIndex(noRecPlanning); @@ -2082,6 +2083,8 @@ public class ReportServiceImpl extends BaseVoServiceImpl implements ReportServic if (CommonUtil.isNullOrEmpty(atasan1.get("nipPns"))) { result.put("nipAtasan1", atasan1.get("nip")); } + } else if (CommonUtil.isNotNullOrEmpty(atasanDireksi)) { + result.put("namaAtasan1", atasanDireksi); } if (CommonUtil.isNotNullOrEmpty(atasan2)) { result.put("namaAtasan2", atasan2.get("nama")); diff --git a/jasamedika-reporting/src/main/java/com/jasamedika/medifirst2000/controller/ReportingController.java b/jasamedika-reporting/src/main/java/com/jasamedika/medifirst2000/controller/ReportingController.java index 3b3e04f7..4c263e42 100644 --- a/jasamedika-reporting/src/main/java/com/jasamedika/medifirst2000/controller/ReportingController.java +++ b/jasamedika-reporting/src/main/java/com/jasamedika/medifirst2000/controller/ReportingController.java @@ -6553,11 +6553,12 @@ public class ReportingController extends LocaleController @RequestParam(value = "idKaRu", required = false, defaultValue = "0") Integer idKaRu, @RequestParam(value = "idAtasan2", required = false, defaultValue = "0") Integer idAtasan2, @RequestParam(value = "idJabatanAtasan1", required = false, defaultValue = "0") Integer idJabatanAtasan1, - @RequestParam(value = "idJabatanAtasan2", required = false, defaultValue = "0") Integer idJabatanAtasan2) { + @RequestParam(value = "idJabatanAtasan2", required = false, defaultValue = "0") Integer idJabatanAtasan2, + @RequestParam(value = "atasanDireksi", required = false) String atasanDireksi) { List> result = new ArrayList>(); Map data = reportService.generateLapPermohonanCuti(noRecPlanning, idJabatan, idUnitKerja, - idAtasan1, idAtasan2, idKaRu, idJabatanAtasan1, idJabatanAtasan2); + idAtasan1, idAtasan2, idKaRu, idJabatanAtasan1, idJabatanAtasan2, atasanDireksi); result.add(data); m.addObject("dataSource", result); m.addObject("format", "pdf"); @@ -6578,11 +6579,12 @@ public class ReportingController extends LocaleController @RequestParam(value = "idKaRu", required = false, defaultValue = "0") Integer idKaRu, @RequestParam(value = "idAtasan2", required = false, defaultValue = "0") Integer idAtasan2, @RequestParam(value = "idJabatanAtasan1", required = false, defaultValue = "0") Integer idJabatanAtasan1, - @RequestParam(value = "idJabatanAtasan2", required = false, defaultValue = "0") Integer idJabatanAtasan2) { + @RequestParam(value = "idJabatanAtasan2", required = false, defaultValue = "0") Integer idJabatanAtasan2, + @RequestParam(value = "atasanDireksi", required = false) String atasanDireksi) { List> result = new ArrayList>(); Map data = reportService.generateLapPermohonanCuti(noRecPlanning, idJabatan, idUnitKerja, - idAtasan1, idAtasan2, idKaRu, idJabatanAtasan1, idJabatanAtasan2); + idAtasan1, idAtasan2, idKaRu, idJabatanAtasan1, idJabatanAtasan2, atasanDireksi); result.add(data); m.addObject("dataSource", result); m.addObject("format", "pdf"); @@ -6603,12 +6605,13 @@ public class ReportingController extends LocaleController @RequestParam(value = "idKaRu", required = false, defaultValue = "0") Integer idKaRu, @RequestParam(value = "idAtasan2", required = false, defaultValue = "0") Integer idAtasan2, @RequestParam(value = "idJabatanAtasan1", required = false, defaultValue = "0") Integer idJabatanAtasan1, - @RequestParam(value = "idJabatanAtasan2", required = false, defaultValue = "0") Integer idJabatanAtasan2) { + @RequestParam(value = "idJabatanAtasan2", required = false, defaultValue = "0") Integer idJabatanAtasan2, + @RequestParam(value = "atasanDireksi", required = false) String atasanDireksi) { List> result = new ArrayList<>(); Map data = new HashMap<>(); Map page1 = reportService.generateLapPermohonanCuti(noRecPlanning, idJabatan, idUnitKerja, - idAtasan1, idAtasan2, idKaRu, idJabatanAtasan1, idJabatanAtasan2); + idAtasan1, idAtasan2, idKaRu, idJabatanAtasan1, idJabatanAtasan2, atasanDireksi); Map page2 = reportService.findDataCetakLuarNegeri(noRecPlanning); data.putAll(page1); data.putAll(page2); @@ -6634,12 +6637,13 @@ public class ReportingController extends LocaleController @RequestParam(value = "idKaRu", required = false, defaultValue = "0") Integer idKaRu, @RequestParam(value = "idAtasan2", required = false, defaultValue = "0") Integer idAtasan2, @RequestParam(value = "idJabatanAtasan1", required = false, defaultValue = "0") Integer idJabatanAtasan1, - @RequestParam(value = "idJabatanAtasan2", required = false, defaultValue = "0") Integer idJabatanAtasan2) { + @RequestParam(value = "idJabatanAtasan2", required = false, defaultValue = "0") Integer idJabatanAtasan2, + @RequestParam(value = "atasanDireksi", required = false) String atasanDireksi) { List> result = new ArrayList<>(); Map data = new HashMap<>(); Map page1 = reportService.generateLapPermohonanCuti(noRecPlanning, idJabatan, idUnitKerja, - idAtasan1, idAtasan2, idKaRu, idJabatanAtasan1, idJabatanAtasan2); + idAtasan1, idAtasan2, idKaRu, idJabatanAtasan1, idJabatanAtasan2, atasanDireksi); Map page2 = reportService.findDataCetakLuarNegeri(noRecPlanning); data.putAll(page1); data.putAll(page2);