diff --git a/jasamedika-business/src/main/java/com/jasamedika/medifirst2000/service/impl/PelayananPasienServiceImpl.java b/jasamedika-business/src/main/java/com/jasamedika/medifirst2000/service/impl/PelayananPasienServiceImpl.java index 92791cf0..f249b7ba 100644 --- a/jasamedika-business/src/main/java/com/jasamedika/medifirst2000/service/impl/PelayananPasienServiceImpl.java +++ b/jasamedika-business/src/main/java/com/jasamedika/medifirst2000/service/impl/PelayananPasienServiceImpl.java @@ -423,7 +423,7 @@ public class PelayananPasienServiceImpl extends BaseVoServiceImpl implements Pel /* * Update Pelayanan Pasien */ - double jasaObat = 800.00; + double jasaObat = 0.00; for (PelayananPasien pp : layanan) { /* * Get diskon jasamedis 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 91d0fd96..627121eb 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 @@ -1540,7 +1540,8 @@ public class RemunerasiServiceImpl extends BaseVoServiceImpl implements Remunera List drKsmObgyn = pegawaiDao.getDokterByKsm(KSM_OBGYN); SimpleDateFormat month = new SimpleDateFormat("MMM-yyyy", new Locale("in", "ID")); listData.forEach(d -> { - if (CommonUtil.isNotNullOrEmpty(d.get("idSayatan"))) + if (CommonUtil.isNotNullOrEmpty(d.get("idSayatan")) + && Integer.parseInt(d.get("urutanSayatan").toString()) != 1) d.put("keterangan", "Diskon Sayatan ke-" + d.get("urutanSayatan").toString() + " (" + Double.parseDouble(d.get("persenSayatan").toString()) + "%)"); }); @@ -1866,7 +1867,8 @@ public class RemunerasiServiceImpl extends BaseVoServiceImpl implements Remunera private List> transformPelayananKepalaPaketFixedPay(List> listData) { listData.forEach(d -> { - if (CommonUtil.isNotNullOrEmpty(d.get("idSayatan"))) + if (CommonUtil.isNotNullOrEmpty(d.get("idSayatan")) + && Integer.parseInt(d.get("urutanSayatan").toString()) != 1) d.put("keterangan", "Diskon Sayatan ke-" + d.get("urutanSayatan").toString() + " (" + Double.parseDouble(d.get("persenSayatan").toString()) + "%)"); }); @@ -1994,8 +1996,13 @@ public class RemunerasiServiceImpl extends BaseVoServiceImpl implements Remunera (hargaJual - (Double.parseDouble(d.get("persenSayatan").toString()) / 100 * hargaJual)), d, false); d.put("persenJasa", persenOperator + "%"); - d.put("keterangan", "Diskon Sayatan ke-" + d.get("urutanSayatan").toString() + " (" - + Double.parseDouble(d.get("persenSayatan").toString()) + "%)" + hargaJasa.getKeterangan()); + if (CommonUtil.isNotNullOrEmpty(d.get("urutanSayatan")) + && Integer.parseInt(d.get("urutanSayatan").toString()) != 1) { + d.put("keterangan", "Diskon Sayatan ke-" + d.get("urutanSayatan").toString() + " (" + + Double.parseDouble(d.get("persenSayatan").toString()) + "%)" + hargaJasa.getKeterangan()); + } else { + d.put("keterangan", hargaJasa.getKeterangan()); + } d.put("hargaJasa", hargaJasa.getNilai()); } else if ((BEDAH_SENTRAL.equals(d.get("idDepartemen")) || (RADIOLOGI.equals(d.get("idDepartemen")) && CATHLAB.equals(d.get("idRuangan")))) @@ -2005,8 +2012,13 @@ public class RemunerasiServiceImpl extends BaseVoServiceImpl implements Remunera (hargaJual - (Double.parseDouble(d.get("persenSayatan").toString()) / 100 * hargaJual)), d, false); d.put("persenJasa", persenAsistenIBS + "%"); - d.put("keterangan", "Diskon Sayatan ke-" + d.get("urutanSayatan").toString() + " (" - + Double.parseDouble(d.get("persenSayatan").toString()) + "%)" + hargaJasa.getKeterangan()); + if (CommonUtil.isNotNullOrEmpty(d.get("urutanSayatan")) + && Integer.parseInt(d.get("urutanSayatan").toString()) != 1) { + d.put("keterangan", "Diskon Sayatan ke-" + d.get("urutanSayatan").toString() + " (" + + Double.parseDouble(d.get("persenSayatan").toString()) + "%)" + hargaJasa.getKeterangan()); + } else { + d.put("keterangan", hargaJasa.getKeterangan()); + } d.put("hargaJasa", hargaJasa.getNilai()); } else if ((BEDAH_SENTRAL.equals(d.get("idDepartemen")) || (RADIOLOGI.equals(d.get("idDepartemen")) && CATHLAB.equals(d.get("idRuangan")))) @@ -2016,8 +2028,13 @@ public class RemunerasiServiceImpl extends BaseVoServiceImpl implements Remunera (hargaJual - (Double.parseDouble(d.get("persenSayatan").toString()) / 100 * hargaJual)), d, false); d.put("persenJasa", persenAnestesi + "%"); - d.put("keterangan", "Diskon Sayatan ke-" + d.get("urutanSayatan").toString() + " (" - + Double.parseDouble(d.get("persenSayatan").toString()) + "%)" + hargaJasa.getKeterangan()); + if (CommonUtil.isNotNullOrEmpty(d.get("urutanSayatan")) + && Integer.parseInt(d.get("urutanSayatan").toString()) != 1) { + d.put("keterangan", "Diskon Sayatan ke-" + d.get("urutanSayatan").toString() + " (" + + Double.parseDouble(d.get("persenSayatan").toString()) + "%)" + hargaJasa.getKeterangan()); + } else { + d.put("keterangan", hargaJasa.getKeterangan()); + } d.put("hargaJasa", hargaJasa.getNilai()); } else if ((BEDAH_SENTRAL.equals(d.get("idDepartemen")) || (RADIOLOGI.equals(d.get("idDepartemen")) && CATHLAB.equals(d.get("idRuangan")))) @@ -2348,8 +2365,13 @@ public class RemunerasiServiceImpl extends BaseVoServiceImpl implements Remunera (hargaJual - (Double.parseDouble(d.get("persenSayatan").toString()) / 100 * hargaJual)), d, false); d.put("persenJasa", persenOperator + "%"); - d.put("keterangan", "Diskon Sayatan ke-" + d.get("urutanSayatan").toString() + " (" - + Double.parseDouble(d.get("persenSayatan").toString()) + "%)" + hargaJasa.getKeterangan()); + if (CommonUtil.isNotNullOrEmpty(d.get("urutanSayatan")) + && Integer.parseInt(d.get("urutanSayatan").toString()) != 1) { + d.put("keterangan", "Diskon Sayatan ke-" + d.get("urutanSayatan").toString() + " (" + + Double.parseDouble(d.get("persenSayatan").toString()) + "%)" + hargaJasa.getKeterangan()); + } else { + d.put("keterangan", hargaJasa.getKeterangan()); + } d.put("hargaJasa", hargaJasa.getNilai()); } else if ((BEDAH_SENTRAL.equals(d.get("idDepartemen")) || (RADIOLOGI.equals(d.get("idDepartemen")) && CATHLAB.equals(d.get("idRuangan")))) @@ -2359,8 +2381,13 @@ public class RemunerasiServiceImpl extends BaseVoServiceImpl implements Remunera (hargaJual - (Double.parseDouble(d.get("persenSayatan").toString()) / 100 * hargaJual)), d, false); d.put("persenJasa", persenAsistenIBS + "%"); - d.put("keterangan", "Diskon Sayatan ke-" + d.get("urutanSayatan").toString() + " (" - + Double.parseDouble(d.get("persenSayatan").toString()) + "%)" + hargaJasa.getKeterangan()); + if (CommonUtil.isNotNullOrEmpty(d.get("urutanSayatan")) + && Integer.parseInt(d.get("urutanSayatan").toString()) != 1) { + d.put("keterangan", "Diskon Sayatan ke-" + d.get("urutanSayatan").toString() + " (" + + Double.parseDouble(d.get("persenSayatan").toString()) + "%)" + hargaJasa.getKeterangan()); + } else { + d.put("keterangan", hargaJasa.getKeterangan()); + } d.put("hargaJasa", hargaJasa.getNilai()); } else if ((BEDAH_SENTRAL.equals(d.get("idDepartemen")) || (RADIOLOGI.equals(d.get("idDepartemen")) && CATHLAB.equals(d.get("idRuangan")))) @@ -2370,8 +2397,13 @@ public class RemunerasiServiceImpl extends BaseVoServiceImpl implements Remunera (hargaJual - (Double.parseDouble(d.get("persenSayatan").toString()) / 100 * hargaJual)), d, false); d.put("persenJasa", persenAnestesi + "%"); - d.put("keterangan", "Diskon Sayatan ke-" + d.get("urutanSayatan").toString() + " (" - + Double.parseDouble(d.get("persenSayatan").toString()) + "%)" + hargaJasa.getKeterangan()); + if (CommonUtil.isNotNullOrEmpty(d.get("urutanSayatan")) + && Integer.parseInt(d.get("urutanSayatan").toString()) != 1) { + d.put("keterangan", "Diskon Sayatan ke-" + d.get("urutanSayatan").toString() + " (" + + Double.parseDouble(d.get("persenSayatan").toString()) + "%)" + hargaJasa.getKeterangan()); + } else { + d.put("keterangan", hargaJasa.getKeterangan()); + } d.put("hargaJasa", hargaJasa.getNilai()); } else if ((BEDAH_SENTRAL.equals(d.get("idDepartemen")) || (RADIOLOGI.equals(d.get("idDepartemen")) && CATHLAB.equals(d.get("idRuangan")))) @@ -2708,8 +2740,13 @@ public class RemunerasiServiceImpl extends BaseVoServiceImpl implements Remunera (hargaJual - (Double.parseDouble(d.get("persenSayatan").toString()) / 100 * hargaJual)), d, false); d.put("persenJasa", persenOperator + "%"); - d.put("keterangan", "Diskon Sayatan ke-" + d.get("urutanSayatan").toString() + " (" - + Double.parseDouble(d.get("persenSayatan").toString()) + "%)" + hargaJasa.getKeterangan()); + if (CommonUtil.isNotNullOrEmpty(d.get("urutanSayatan")) + && Integer.parseInt(d.get("urutanSayatan").toString()) != 1) { + d.put("keterangan", "Diskon Sayatan ke-" + d.get("urutanSayatan").toString() + " (" + + Double.parseDouble(d.get("persenSayatan").toString()) + "%)" + hargaJasa.getKeterangan()); + } else { + d.put("keterangan", hargaJasa.getKeterangan()); + } d.put("hargaJasa", hargaJasa.getNilai()); } else if ((BEDAH_SENTRAL.equals(d.get("idDepartemen")) || (RADIOLOGI.equals(d.get("idDepartemen")) && CATHLAB.equals(d.get("idRuangan")))) @@ -2719,8 +2756,13 @@ public class RemunerasiServiceImpl extends BaseVoServiceImpl implements Remunera (hargaJual - (Double.parseDouble(d.get("persenSayatan").toString()) / 100 * hargaJual)), d, false); d.put("persenJasa", persenAsistenIBS + "%"); - d.put("keterangan", "Diskon Sayatan ke-" + d.get("urutanSayatan").toString() + " (" - + Double.parseDouble(d.get("persenSayatan").toString()) + "%)" + hargaJasa.getKeterangan()); + if (CommonUtil.isNotNullOrEmpty(d.get("urutanSayatan")) + && Integer.parseInt(d.get("urutanSayatan").toString()) != 1) { + d.put("keterangan", "Diskon Sayatan ke-" + d.get("urutanSayatan").toString() + " (" + + Double.parseDouble(d.get("persenSayatan").toString()) + "%)" + hargaJasa.getKeterangan()); + } else { + d.put("keterangan", hargaJasa.getKeterangan()); + } d.put("hargaJasa", hargaJasa.getNilai()); } else if ((BEDAH_SENTRAL.equals(d.get("idDepartemen")) || (RADIOLOGI.equals(d.get("idDepartemen")) && CATHLAB.equals(d.get("idRuangan")))) @@ -2730,8 +2772,13 @@ public class RemunerasiServiceImpl extends BaseVoServiceImpl implements Remunera (hargaJual - (Double.parseDouble(d.get("persenSayatan").toString()) / 100 * hargaJual)), d, false); d.put("persenJasa", persenAnestesi + "%"); - d.put("keterangan", "Diskon Sayatan ke-" + d.get("urutanSayatan").toString() + " (" - + Double.parseDouble(d.get("persenSayatan").toString()) + "%)" + hargaJasa.getKeterangan()); + if (CommonUtil.isNotNullOrEmpty(d.get("urutanSayatan")) + && Integer.parseInt(d.get("urutanSayatan").toString()) != 1) { + d.put("keterangan", "Diskon Sayatan ke-" + d.get("urutanSayatan").toString() + " (" + + Double.parseDouble(d.get("persenSayatan").toString()) + "%)" + hargaJasa.getKeterangan()); + } else { + d.put("keterangan", hargaJasa.getKeterangan()); + } d.put("hargaJasa", hargaJasa.getNilai()); } else if ((BEDAH_SENTRAL.equals(d.get("idDepartemen")) || (RADIOLOGI.equals(d.get("idDepartemen")) && CATHLAB.equals(d.get("idRuangan")))) @@ -2953,8 +3000,13 @@ public class RemunerasiServiceImpl extends BaseVoServiceImpl implements Remunera (hargaJual - (Double.parseDouble(d.get("persenSayatan").toString()) / 100 * hargaJual)), d, false); d.put("persenJasa", persenOperatorIBS + "%"); - d.put("keterangan", "Diskon Sayatan ke-" + d.get("urutanSayatan").toString() + " (" - + Double.parseDouble(d.get("persenSayatan").toString()) + "%)" + hargaJasa.getKeterangan()); + if (CommonUtil.isNotNullOrEmpty(d.get("urutanSayatan")) + && Integer.parseInt(d.get("urutanSayatan").toString()) != 1) { + d.put("keterangan", "Diskon Sayatan ke-" + d.get("urutanSayatan").toString() + " (" + + Double.parseDouble(d.get("persenSayatan").toString()) + "%)" + hargaJasa.getKeterangan()); + } else { + d.put("keterangan", hargaJasa.getKeterangan()); + } d.put("hargaJasa", hargaJasa.getNilai()); } else if ((BEDAH_SENTRAL.equals(d.get("idDepartemen")) || (RADIOLOGI.equals(d.get("idDepartemen")) && CATHLAB.equals(d.get("idRuangan")))) @@ -2964,8 +3016,13 @@ public class RemunerasiServiceImpl extends BaseVoServiceImpl implements Remunera (hargaJual - (Double.parseDouble(d.get("persenSayatan").toString()) / 100 * hargaJual)), d, false); d.put("persenJasa", persenAsistenIBS + "%"); - d.put("keterangan", "Diskon Sayatan ke-" + d.get("urutanSayatan").toString() + " (" - + Double.parseDouble(d.get("persenSayatan").toString()) + "%)" + hargaJasa.getKeterangan()); + if (CommonUtil.isNotNullOrEmpty(d.get("urutanSayatan")) + && Integer.parseInt(d.get("urutanSayatan").toString()) != 1) { + d.put("keterangan", "Diskon Sayatan ke-" + d.get("urutanSayatan").toString() + " (" + + Double.parseDouble(d.get("persenSayatan").toString()) + "%)" + hargaJasa.getKeterangan()); + } else { + d.put("keterangan", hargaJasa.getKeterangan()); + } d.put("hargaJasa", hargaJasa.getNilai()); } else if ((BEDAH_SENTRAL.equals(d.get("idDepartemen")) || (RADIOLOGI.equals(d.get("idDepartemen")) && CATHLAB.equals(d.get("idRuangan")))) @@ -2975,8 +3032,13 @@ public class RemunerasiServiceImpl extends BaseVoServiceImpl implements Remunera (hargaJual - (Double.parseDouble(d.get("persenSayatan").toString()) / 100 * hargaJual)), d, false); d.put("persenJasa", persenAnestesi + "%"); - d.put("keterangan", "Diskon Sayatan ke-" + d.get("urutanSayatan").toString() + " (" - + Double.parseDouble(d.get("persenSayatan").toString()) + "%)" + hargaJasa.getKeterangan()); + if (CommonUtil.isNotNullOrEmpty(d.get("urutanSayatan")) + && Integer.parseInt(d.get("urutanSayatan").toString()) != 1) { + d.put("keterangan", "Diskon Sayatan ke-" + d.get("urutanSayatan").toString() + " (" + + Double.parseDouble(d.get("persenSayatan").toString()) + "%)" + hargaJasa.getKeterangan()); + } else { + d.put("keterangan", hargaJasa.getKeterangan()); + } d.put("hargaJasa", hargaJasa.getNilai()); } else if ((BEDAH_SENTRAL.equals(d.get("idDepartemen")) || (RADIOLOGI.equals(d.get("idDepartemen")) && CATHLAB.equals(d.get("idRuangan")))) @@ -3170,6 +3232,7 @@ public class RemunerasiServiceImpl extends BaseVoServiceImpl implements Remunera } return builder.build(); } + double hargaDiskon = Double.parseDouble(d.get("hargaDiskon").toString()); double persenDiskonPegawai = Double.parseDouble(d.get("persenDiskonPegawai").toString()); double persenDiskonJasa = 0.0; if (DOKTER_PEMERIKSA.equals(d.get("idJenisPelaksana"))) { @@ -3179,7 +3242,12 @@ public class RemunerasiServiceImpl extends BaseVoServiceImpl implements Remunera } else if (DOKTER_ANASTESI.equals(d.get("idJenisPelaksana"))) { persenDiskonJasa = Double.parseDouble(d.get("persenDiskonAn").toString()); } - builder.nilai(persenRemunerasi * hargaJual * (1 - persenDiskonPegawai / 100) * (1 - persenDiskonJasa / 100)); + if (Boolean.parseBoolean(d.get("isSelisihPaket").toString())) { + builder.nilai(persenRemunerasi * (hargaJual - hargaDiskon)); + } else { + builder.nilai( + persenRemunerasi * hargaJual * (1 - persenDiskonPegawai / 100) * (1 - persenDiskonJasa / 100)); + } if (Boolean.parseBoolean(d.get("isSelisihPaket").toString())) { if (persenDiskonPegawai > 0.0 && persenDiskonJasa > 0.0) { if (isFrontNote) { @@ -3201,6 +3269,8 @@ public class RemunerasiServiceImpl extends BaseVoServiceImpl implements Remunera } else { builder.keterangan(" + Selisih Paket + Diskon Jasa Medis Dokter (" + persenDiskonJasa + "%)"); } + } else { + builder.keterangan(""); } } else { if (persenDiskonPegawai > 0.0 && persenDiskonJasa > 0.0) { @@ -3223,6 +3293,8 @@ public class RemunerasiServiceImpl extends BaseVoServiceImpl implements Remunera } else { builder.keterangan(" + Diskon Jasa Medis Dokter (" + persenDiskonJasa + "%)"); } + } else { + builder.keterangan(""); } } return builder.build(); diff --git a/jasamedika-sdm/src/main/java/com/jasamedika/medifirst2000/controller/IkiDanRemunerasiController.java b/jasamedika-sdm/src/main/java/com/jasamedika/medifirst2000/controller/IkiDanRemunerasiController.java index c60ffd69..dbfe82a2 100644 --- a/jasamedika-sdm/src/main/java/com/jasamedika/medifirst2000/controller/IkiDanRemunerasiController.java +++ b/jasamedika-sdm/src/main/java/com/jasamedika/medifirst2000/controller/IkiDanRemunerasiController.java @@ -2672,7 +2672,7 @@ public class IkiDanRemunerasiController extends LocaleController result; if (month.isBefore(oct24)) { @@ -2699,7 +2699,7 @@ public class IkiDanRemunerasiController extends LocaleController> result; if (month.isBefore(oct24)) { @@ -2726,7 +2726,7 @@ public class IkiDanRemunerasiController extends LocaleController> result; if (month.isBefore(oct24)) { @@ -2755,7 +2755,7 @@ public class IkiDanRemunerasiController extends LocaleController> result; if (month.isBefore(oct24)) { @@ -2782,7 +2782,7 @@ public class IkiDanRemunerasiController extends LocaleController> result; if (month.isBefore(oct24)) {