diff --git a/jasamedika-business/src/main/java/com/jasamedika/medifirst2000/dao/PelayananPasienDao.java b/jasamedika-business/src/main/java/com/jasamedika/medifirst2000/dao/PelayananPasienDao.java index 41b7ba15..f3fcab97 100644 --- a/jasamedika-business/src/main/java/com/jasamedika/medifirst2000/dao/PelayananPasienDao.java +++ b/jasamedika-business/src/main/java/com/jasamedika/medifirst2000/dao/PelayananPasienDao.java @@ -208,13 +208,24 @@ public interface PelayananPasienDao extends PagingAndSortingRepository d : listData) - if (Master.Departemen.BEDAH_SENTRAL.equals(d.get("idDepartemen")) + if (CommonUtil.isNotNullOrEmpty(d.get("totalDiskon")) + && Double.parseDouble(d.get("totalDiskon").toString()) > 0.0) { + d.put("hargaJasa", 0.0); + } else if (Master.Departemen.BEDAH_SENTRAL.equals(d.get("idDepartemen")) && Arrays.asList(Master.KelompokPasien.KELOMPOK_BPJS).contains(d.get("idKelompokPasien"))) { double persenTarif = persenTarifJasaBedah / 100; if (Master.JenisPetugasPelaksana.DOKTER_PEMERIKSA.equals(d.get("idJenisPelaksana"))) { @@ -838,45 +842,60 @@ public class PelayananPasienServiceImpl extends BaseVoServiceImpl implements Pel if (Master.JenisPetugasPelaksana.DOKTER_PEMERIKSA.equals(d.get("idJenisPelaksana"))) { double persenJasa = persenOperatorIBS / 100; d.put("persenJasa", persenOperatorIBS.toString() + "%"); - d.put("hargaJasa", persenJasa * persenTarif * Double.parseDouble(d.get("hargaJual").toString())); + if (Double.parseDouble(d.get("hargaJasa").toString()) != 0.0) + d.put("hargaJasa", + persenJasa * persenTarif * Double.parseDouble(d.get("hargaJual").toString())); } else if (Master.JenisPetugasPelaksana.ASISTEN_SPESIALIS.equals(d.get("idJenisPelaksana"))) { double persenJasa = persenAsistenIBS / 100; d.put("persenJasa", persenAsistenIBS.toString() + "%"); - d.put("hargaJasa", persenJasa * persenTarif * Double.parseDouble(d.get("hargaJual").toString())); + if (Double.parseDouble(d.get("hargaJasa").toString()) != 0.0) + d.put("hargaJasa", + persenJasa * persenTarif * Double.parseDouble(d.get("hargaJual").toString())); } else if (Master.JenisPetugasPelaksana.DOKTER_ANASTESI.equals(d.get("idJenisPelaksana"))) { double persenJasa = persenAnestesiIBS / 100; d.put("persenJasa", persenAnestesiIBS.toString() + "%"); - d.put("hargaJasa", persenJasa * persenTarif * Double.parseDouble(d.get("hargaJual").toString())); + if (Double.parseDouble(d.get("hargaJasa").toString()) != 0.0) + d.put("hargaJasa", + persenJasa * persenTarif * Double.parseDouble(d.get("hargaJual").toString())); } } else if (Master.Departemen.BEDAH_SENTRAL.equals(d.get("idDepartemen"))) { if (Master.JenisPetugasPelaksana.DOKTER_PEMERIKSA.equals(d.get("idJenisPelaksana"))) { d.put("persenJasa", persenOperatorIBS.toString() + "%"); - d.put("hargaJasa", persenOperatorIBS / 100 * Double.parseDouble(d.get("hargaJual").toString())); + if (Double.parseDouble(d.get("hargaJasa").toString()) != 0.0) + d.put("hargaJasa", persenOperatorIBS / 100 * Double.parseDouble(d.get("hargaJual").toString())); } else if (Master.JenisPetugasPelaksana.ASISTEN_SPESIALIS.equals(d.get("idJenisPelaksana"))) { d.put("persenJasa", persenAsistenIBS.toString() + "%"); - d.put("hargaJasa", persenAsistenIBS / 100 * Double.parseDouble(d.get("hargaJual").toString())); + if (Double.parseDouble(d.get("hargaJasa").toString()) != 0.0) + d.put("hargaJasa", persenAsistenIBS / 100 * Double.parseDouble(d.get("hargaJual").toString())); } else if (Master.JenisPetugasPelaksana.DOKTER_ANASTESI.equals(d.get("idJenisPelaksana"))) { d.put("persenJasa", persenAnestesiIBS.toString() + "%"); - d.put("hargaJasa", persenAnestesiIBS / 100 * Double.parseDouble(d.get("hargaJual").toString())); + if (Double.parseDouble(d.get("hargaJasa").toString()) != 0.0) + d.put("hargaJasa", persenAnestesiIBS / 100 * Double.parseDouble(d.get("hargaJual").toString())); } } else if (Master.Departemen.RADIOLOGI.equals(d.get("idDepartemen"))) { d.put("persenJasa", persenRadiologi.toString() + "%"); - d.put("hargaJasa", persenRadiologi / 100 * Double.parseDouble(d.get("hargaJual").toString())); + if (Double.parseDouble(d.get("hargaJasa").toString()) != 0.0) + d.put("hargaJasa", persenRadiologi / 100 * Double.parseDouble(d.get("hargaJual").toString())); } else if (Master.Departemen.LABORATORIUM.equals(d.get("idDepartemen"))) { d.put("persenJasa", persenLaboratorium.toString() + "%"); - d.put("hargaJasa", persenLaboratorium / 100 * Double.parseDouble(d.get("hargaJual").toString())); + if (Double.parseDouble(d.get("hargaJasa").toString()) != 0.0) + d.put("hargaJasa", persenLaboratorium / 100 * Double.parseDouble(d.get("hargaJual").toString())); } else if (Master.Departemen.REHAB_MEDIK.equals(d.get("idDepartemen"))) { d.put("persenJasa", persenRehabMedik.toString() + "%"); - d.put("hargaJasa", persenRehabMedik / 100 * Double.parseDouble(d.get("hargaJual").toString())); + if (Double.parseDouble(d.get("hargaJasa").toString()) != 0.0) + d.put("hargaJasa", persenRehabMedik / 100 * Double.parseDouble(d.get("hargaJual").toString())); } else if (Master.GolonganProduk.KONSULTASI.equals(d.get("idGolonganProduk"))) { d.put("persenJasa", persenKonsultasi.toString() + "%"); - d.put("hargaJasa", persenKonsultasi / 100 * Double.parseDouble(d.get("hargaJual").toString())); + if (Double.parseDouble(d.get("hargaJasa").toString()) != 0.0) + d.put("hargaJasa", persenKonsultasi / 100 * Double.parseDouble(d.get("hargaJual").toString())); } else if (Master.GolonganProduk.VISIT.equals(d.get("idGolonganProduk"))) { d.put("persenJasa", persenVisite.toString() + "%"); - d.put("hargaJasa", persenVisite / 100 * Double.parseDouble(d.get("hargaJual").toString())); + if (Double.parseDouble(d.get("hargaJasa").toString()) != 0.0) + d.put("hargaJasa", persenVisite / 100 * Double.parseDouble(d.get("hargaJual").toString())); } else { d.put("persenJasa", persenTindakan.toString() + "%"); - d.put("hargaJasa", persenTindakan / 100 * Double.parseDouble(d.get("hargaJual").toString())); + if (Double.parseDouble(d.get("hargaJasa").toString()) != 0.0) + d.put("hargaJasa", persenTindakan / 100 * Double.parseDouble(d.get("hargaJual").toString())); } } /* @@ -1023,6 +1042,7 @@ public class PelayananPasienServiceImpl extends BaseVoServiceImpl implements Pel /* * Mendapatkan persentase jasa */ + Double persenBPJS = Double.parseDouble(GetSettingDataFixed("persenJasaBPJS").toString()); Double persenOperatorIBS = Double.parseDouble(GetSettingDataFixed("persenJasaOperatorIBS").toString()); Double persenAsistenIBS = Double.parseDouble(GetSettingDataFixed("persenJasaAsistenIBS").toString()); Double persenAnestesiIBS = Double.parseDouble(GetSettingDataFixed("persenJasaAnestesiIBS").toString()); @@ -1036,36 +1056,49 @@ public class PelayananPasienServiceImpl extends BaseVoServiceImpl implements Pel * Mapping persentase jasa remunerasi */ for (Map d : listData) { - if (Master.Departemen.BEDAH_SENTRAL.equals(d.get("idDepartemen")) + if (Arrays.asList(Master.KelompokPasien.KELOMPOK_BPJS).contains(d.get("idKelompokPasien"))) { + d.put("persenJasa", persenBPJS.toString() + "%"); + if (Double.parseDouble(d.get("hargaJasa").toString()) != 0.0) + d.put("hargaJasa", persenBPJS / 100 * Double.parseDouble(d.get("hargaJual").toString())); + } else if (Master.Departemen.BEDAH_SENTRAL.equals(d.get("idDepartemen")) && Master.JenisPetugasPelaksana.DOKTER_PEMERIKSA.equals(d.get("idJenisPelaksana"))) { d.put("persenJasa", persenOperatorIBS.toString() + "%"); - d.put("hargaJasa", persenOperatorIBS / 100 * Double.parseDouble(d.get("hargaJual").toString())); + if (Double.parseDouble(d.get("hargaJasa").toString()) != 0.0) + d.put("hargaJasa", persenOperatorIBS / 100 * Double.parseDouble(d.get("hargaJual").toString())); } else if (Master.Departemen.BEDAH_SENTRAL.equals(d.get("idDepartemen")) && Master.JenisPetugasPelaksana.ASISTEN_SPESIALIS.equals(d.get("idJenisPelaksana"))) { d.put("persenJasa", persenAsistenIBS.toString() + "%"); - d.put("hargaJasa", persenAsistenIBS / 100 * Double.parseDouble(d.get("hargaJual").toString())); + if (Double.parseDouble(d.get("hargaJasa").toString()) != 0.0) + d.put("hargaJasa", persenAsistenIBS / 100 * Double.parseDouble(d.get("hargaJual").toString())); } else if (Master.Departemen.BEDAH_SENTRAL.equals(d.get("idDepartemen")) && Master.JenisPetugasPelaksana.DOKTER_ANASTESI.equals(d.get("idJenisPelaksana"))) { d.put("persenJasa", persenAnestesiIBS.toString() + "%"); - d.put("hargaJasa", persenAnestesiIBS / 100 * Double.parseDouble(d.get("hargaJual").toString())); + if (Double.parseDouble(d.get("hargaJasa").toString()) != 0.0) + d.put("hargaJasa", persenAnestesiIBS / 100 * Double.parseDouble(d.get("hargaJual").toString())); } else if (Master.Departemen.RADIOLOGI.equals(d.get("idDepartemen"))) { d.put("persenJasa", persenRadiologi.toString() + "%"); - d.put("hargaJasa", persenRadiologi / 100 * Double.parseDouble(d.get("hargaJual").toString())); + if (Double.parseDouble(d.get("hargaJasa").toString()) != 0.0) + d.put("hargaJasa", persenRadiologi / 100 * Double.parseDouble(d.get("hargaJual").toString())); } else if (Master.Departemen.LABORATORIUM.equals(d.get("idDepartemen"))) { d.put("persenJasa", persenLaboratorium.toString() + "%"); - d.put("hargaJasa", persenLaboratorium / 100 * Double.parseDouble(d.get("hargaJual").toString())); + if (Double.parseDouble(d.get("hargaJasa").toString()) != 0.0) + d.put("hargaJasa", persenLaboratorium / 100 * Double.parseDouble(d.get("hargaJual").toString())); } else if (Master.Departemen.REHAB_MEDIK.equals(d.get("idDepartemen"))) { d.put("persenJasa", persenRehabMedik.toString() + "%"); - d.put("hargaJasa", persenRehabMedik / 100 * Double.parseDouble(d.get("hargaJual").toString())); + if (Double.parseDouble(d.get("hargaJasa").toString()) != 0.0) + d.put("hargaJasa", persenRehabMedik / 100 * Double.parseDouble(d.get("hargaJual").toString())); } else if (Master.GolonganProduk.KONSULTASI.equals(d.get("idGolonganProduk"))) { d.put("persenJasa", persenKonsultasi.toString() + "%"); - d.put("hargaJasa", persenKonsultasi / 100 * Double.parseDouble(d.get("hargaJual").toString())); + if (Double.parseDouble(d.get("hargaJasa").toString()) != 0.0) + d.put("hargaJasa", persenKonsultasi / 100 * Double.parseDouble(d.get("hargaJual").toString())); } else if (Master.GolonganProduk.VISIT.equals(d.get("idGolonganProduk"))) { d.put("persenJasa", persenVisite.toString() + "%"); - d.put("hargaJasa", persenVisite / 100 * Double.parseDouble(d.get("hargaJual").toString())); + if (Double.parseDouble(d.get("hargaJasa").toString()) != 0.0) + d.put("hargaJasa", persenVisite / 100 * Double.parseDouble(d.get("hargaJual").toString())); } else { d.put("persenJasa", persenTindakan.toString() + "%"); - d.put("hargaJasa", persenTindakan / 100 * Double.parseDouble(d.get("hargaJual").toString())); + if (Double.parseDouble(d.get("hargaJasa").toString()) != 0.0) + d.put("hargaJasa", persenTindakan / 100 * Double.parseDouble(d.get("hargaJual").toString())); } } /*