diff --git a/jasamedika-business/src/main/java/com/jasamedika/medifirst2000/service/impl/RemunerasiServiceImpl.java b/jasamedika-business/src/main/java/com/jasamedika/medifirst2000/service/impl/RemunerasiServiceImpl.java index 4bc9af74..f05dc6d3 100644 --- a/jasamedika-business/src/main/java/com/jasamedika/medifirst2000/service/impl/RemunerasiServiceImpl.java +++ b/jasamedika-business/src/main/java/com/jasamedika/medifirst2000/service/impl/RemunerasiServiceImpl.java @@ -2298,6 +2298,8 @@ public class RemunerasiServiceImpl extends BaseVoServiceImpl implements Remunera double persenKonsultasi = toDoubleSettingFix("persenRemunKonsultasiDokter", tglAkhir); double persenVisite = toDoubleSettingFix("persenRemunVisiteDokter", tglAkhir); double persenTindakan = toDoubleSettingFix("persenRemunTindakanDokter", tglAkhir); + double persenTindakanRuangIntensif = toDoubleSettingFix("persenRemunTindakanDokterRuangIntensif", tglAkhir); + List listRuanganIntensifRemun = toListIntegerSettingFix("listRuanganIntensifRemun", tglAkhir); double persenTarifJasaBedah = toDoubleSettingFix("persenTarifJasaBedah", tglAkhir); double persenTarifJasaICU = toDoubleSettingFix("persenTarifJasaICU", tglAkhir); double persenRemunDokterPA = toDoubleSettingFix("persenRemunDokterPA", tglAkhir); @@ -2507,18 +2509,33 @@ public class RemunerasiServiceImpl extends BaseVoServiceImpl implements Remunera d.put("persenJasa", persenLaboratorium + "%"); d.put("keterangan", hargaJasa.getKeterangan()); d.put("hargaJasa", hargaJasa.getNilai()); - } else if (CommonUtil.isNotNullOrEmpty(d.get("idRuangan")) - && Arrays.asList(ICU_NICU).contains(Integer.parseInt(d.get("idRuangan").toString()))) { - double persenJasa = persenTindakan / 100; - RemunHargaJasaDto hargaJasa = hargaJasa(persenJasa * persenTarifICU, hargaJual, d); - d.put("persenJasa", persenTindakan + "%"); - d.put("keterangan", "Tarif Jasa (" + persenTarifJasaICU + "%)" + hargaJasa.getKeterangan()); - d.put("hargaJasa", hargaJasa.getNilai()); + } else if (CommonUtil.isNotNullOrEmpty(d.get("idRuangan")) && Arrays.asList(ICU_NICU).contains(Integer.parseInt(d.get("idRuangan").toString()))) { + // Penyesuaian Perhitungan Remunerasi + if( listRuanganIntensifRemun.contains(Integer.parseInt(d.get("idRuangan").toString())) ){ + double persenJasa = persenTindakanRuangIntensif / 100; + RemunHargaJasaDto hargaJasa = hargaJasa(persenJasa * persenTarifICU, hargaJual, d); + d.put("persenJasa", persenTindakanRuangIntensif + "%"); + d.put("keterangan", "Tarif Jasa (" + persenTarifJasaICU + "%)" + hargaJasa.getKeterangan()); + d.put("hargaJasa", hargaJasa.getNilai()); + }else{ + double persenJasa = persenTindakan / 100; + RemunHargaJasaDto hargaJasa = hargaJasa(persenJasa * persenTarifICU, hargaJual, d); + d.put("persenJasa", persenTindakan + "%"); + d.put("keterangan", "Tarif Jasa (" + persenTarifJasaICU + "%)" + hargaJasa.getKeterangan()); + d.put("hargaJasa", hargaJasa.getNilai()); + } } else { - RemunHargaJasaDto hargaJasa = hargaJasa(persenTindakan / 100, hargaJual, d); - d.put("persenJasa", persenTindakan + "%"); - d.put("keterangan", hargaJasa.getKeterangan()); - d.put("hargaJasa", hargaJasa.getNilai()); + if( listRuanganIntensifRemun.contains(Integer.parseInt(d.get("idRuangan").toString())) ){ + RemunHargaJasaDto hargaJasa = hargaJasa(persenTindakanRuangIntensif / 100, hargaJual, d); + d.put("persenJasa", persenTindakanRuangIntensif + "%"); + d.put("keterangan", hargaJasa.getKeterangan()); + d.put("hargaJasa", hargaJasa.getNilai()); + }else{ + RemunHargaJasaDto hargaJasa = hargaJasa(persenTindakan / 100, hargaJual, d); + d.put("persenJasa", persenTindakan + "%"); + d.put("keterangan", hargaJasa.getKeterangan()); + d.put("hargaJasa", hargaJasa.getNilai()); + } } } /*