From 44b3978e3b0194d99ac72dfc06a9a373eaa84ec8 Mon Sep 17 00:00:00 2001 From: Salman Manoe Date: Fri, 8 Sep 2023 22:26:08 +0700 Subject: [PATCH] Update pelayanan pasien Penyesuaian logbook dokter untuk operasi pasien non-jkn lebih dari satu --- .../medifirst2000/dao/PelayananPasienDao.java | 29 +- .../impl/PelayananPasienServiceImpl.java | 344 ++++++++++++------ 2 files changed, 250 insertions(+), 123 deletions(-) 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 5921dd1f..a087143a 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 @@ -197,15 +197,16 @@ public interface PelayananPasienDao extends JpaRepository d : listData) if (DOKTER_PEMERIKSA.equals(d.get("idJenisPelaksana")) && CommonUtil.isNotNullOrEmpty(d.get("totalDiskon")) - && Double.parseDouble(d.get("totalDiskon").toString()) > 0.0) { + && Double.parseDouble(d.get("totalDiskon").toString()) > 0.0 + && CommonUtil.isNullOrEmpty(d.get("idSayatan"))) { /* * Untuk diskon jasa medis oleh dpjp */ @@ -591,6 +592,28 @@ public class PelayananPasienServiceImpl extends BaseVoServiceImpl implements Pel && DOKTER_ANASTESI.equals(d.get("idJenisPelaksana"))) { double persenJasa = persenAnestesi / 100; d.put("hargaJasa", persenJasa * persenTarifIBS * Double.parseDouble(d.get("hargaJual").toString())); + } else if (BEDAH_SENTRAL.equals(d.get("idDepartemen")) && DOKTER_PEMERIKSA.equals(d.get("idJenisPelaksana")) + && CommonUtil.isNotNullOrEmpty(d.get("idSayatan"))) { + d.put("hargaJasa", + persenOperator / 100 + * (Double.parseDouble(d.get("hargaJual").toString()) + - (Double.parseDouble(d.get("persenSayatan").toString()) / 100 + * Double.parseDouble(d.get("hargaJual").toString())))); + } else if (BEDAH_SENTRAL.equals(d.get("idDepartemen")) + && ASISTEN_SPESIALIS.equals(d.get("idJenisPelaksana")) + && CommonUtil.isNotNullOrEmpty(d.get("idSayatan"))) { + d.put("hargaJasa", + persenAsistenIBS / 100 + * (Double.parseDouble(d.get("hargaJual").toString()) + - (Double.parseDouble(d.get("persenSayatan").toString()) / 100 + * Double.parseDouble(d.get("hargaJual").toString())))); + } else if (BEDAH_SENTRAL.equals(d.get("idDepartemen")) && DOKTER_ANASTESI.equals(d.get("idJenisPelaksana")) + && CommonUtil.isNotNullOrEmpty(d.get("idSayatan"))) { + d.put("hargaJasa", + persenAnestesi / 100 + * (Double.parseDouble(d.get("hargaJual").toString()) + - (Double.parseDouble(d.get("persenSayatan").toString()) / 100 + * Double.parseDouble(d.get("hargaJual").toString())))); } else if (BEDAH_SENTRAL.equals(d.get("idDepartemen")) && DOKTER_PEMERIKSA.equals(d.get("idJenisPelaksana"))) { d.put("hargaJasa", persenOperator / 100 * Double.parseDouble(d.get("hargaJual").toString())); @@ -1531,6 +1554,34 @@ public class PelayananPasienServiceImpl extends BaseVoServiceImpl implements Pel d.put("persenJasa", persenTarifJasaBedah + "% + " + persenAnestesi + "%"); if (Double.parseDouble(d.get("hargaJasa").toString()) != 0.0) d.put("hargaJasa", persenJasa * persenTarifIBS * Double.parseDouble(d.get("hargaJual").toString())); + } else if (BEDAH_SENTRAL.equals(d.get("idDepartemen")) && DOKTER_PEMERIKSA.equals(d.get("idJenisPelaksana")) + && CommonUtil.isNotNullOrEmpty(d.get("idSayatan"))) { + d.put("persenJasa", persenOperator + "%"); + if (Double.parseDouble(d.get("hargaJasa").toString()) != 0.0) + d.put("hargaJasa", + persenOperator / 100 + * (Double.parseDouble(d.get("hargaJual").toString()) + - (Double.parseDouble(d.get("persenSayatan").toString()) / 100 + * Double.parseDouble(d.get("hargaJual").toString())))); + } else if (BEDAH_SENTRAL.equals(d.get("idDepartemen")) + && ASISTEN_SPESIALIS.equals(d.get("idJenisPelaksana")) + && CommonUtil.isNotNullOrEmpty(d.get("idSayatan"))) { + d.put("persenJasa", persenAsistenIBS + "%"); + if (Double.parseDouble(d.get("hargaJasa").toString()) != 0.0) + d.put("hargaJasa", + persenAsistenIBS / 100 + * (Double.parseDouble(d.get("hargaJual").toString()) + - (Double.parseDouble(d.get("persenSayatan").toString()) / 100 + * Double.parseDouble(d.get("hargaJual").toString())))); + } else if (BEDAH_SENTRAL.equals(d.get("idDepartemen")) && DOKTER_ANASTESI.equals(d.get("idJenisPelaksana")) + && CommonUtil.isNotNullOrEmpty(d.get("idSayatan"))) { + d.put("persenJasa", persenAnestesi + "%"); + if (Double.parseDouble(d.get("hargaJasa").toString()) != 0.0) + d.put("hargaJasa", + persenAnestesi / 100 + * (Double.parseDouble(d.get("hargaJual").toString()) + - (Double.parseDouble(d.get("persenSayatan").toString()) / 100 + * Double.parseDouble(d.get("hargaJual").toString())))); } else if (BEDAH_SENTRAL.equals(d.get("idDepartemen")) && DOKTER_PEMERIKSA.equals(d.get("idJenisPelaksana"))) { d.put("persenJasa", persenOperator + "%"); @@ -1665,18 +1716,62 @@ public class PelayananPasienServiceImpl extends BaseVoServiceImpl implements Pel } private List> groupingTanggalRemun(List> listData) { - Map>>>>>>> collectTanggal = listData + Map>>>>>>>> collectTanggal = listData .stream() .collect(Collectors.groupingBy(o1 -> Integer.parseInt(o1.get("idProduk").toString()), - Collectors.groupingBy(o2 -> o2.get("persenJasa").toString(), - Collectors.groupingBy(o3 -> Double.parseDouble(o3.get("hargaJasa").toString()), - Collectors.groupingBy(o4 -> Double.parseDouble(o4.get("hargaJual").toString()), - Collectors.groupingBy( + Collectors.groupingBy(o2 -> o2.get("persenJasa").toString(), Collectors.groupingBy( + o3 -> Double.parseDouble(o3.get("hargaJasa").toString()), Collectors.groupingBy( + o4 -> Double.parseDouble(o4.get("hargaJual").toString()), Collectors + .groupingBy( + o5 -> Integer.parseInt( + o5.get("idKelompokPasien").toString()), + Collectors.groupingBy(o6 -> o6.get("keterangan").toString(), + Collectors.groupingBy( + o7 -> o7.get("tanggal").toString())))))))); + List> result = new ArrayList<>(); + collectTanggal.forEach((k1, v1) -> v1.forEach((k2, v2) -> v2.forEach((k3, v3) -> v3 + .forEach((k4, v4) -> v4.forEach((k5, v5) -> v5.forEach((k6, v6) -> v6.forEach((k7, v7) -> { + HashMap map = new HashMap<>(); + map.put("idProduk", k1); + map.put("persenJasa", k2); + map.put("hargaJasa", k3); + map.put("hargaJual", k4); + map.put("idKelompokPasien", k5); + map.put("keterangan", k6); + map.put("tanggal", k7); + List norecs = v7.stream().map(e -> e.get("idPelayananPasienPetugas").toString()) + .collect(Collectors.toList()); + map.put("norecs", norecs); + double jumlah = v7.stream().mapToDouble(e -> Double.parseDouble(e.get("jumlah").toString())).sum(); + map.put("jumlah", jumlah); + Optional> first = v7.stream().findFirst(); + first.ifPresent(e -> { + map.put("namaProduk", e.get("namaProduk").toString()); + map.put("kelompokPasien", e.get("kelompokPasien").toString()); + map.put("keterangan", e.get("keterangan").toString()); + map.put("tglPelayanan", e.get("tglPelayanan")); + map.put("sortIdKelompokPasien", Integer.parseInt(e.get("sortIdKelompokPasien").toString())); + map.put("sortIdKelas", Integer.parseInt(e.get("sortIdKelas").toString())); + }); + result.add(map); + }))))))); + return result; + } + + private List> groupingKategoriRemun(List> data) { + Map>>>>>>> collected = data + .stream() + .collect(Collectors.groupingBy(o1 -> Integer.parseInt(o1.get("idProduk").toString()), + Collectors.groupingBy(o2 -> o2.get("persenJasa").toString(), Collectors.groupingBy( + o3 -> Double.parseDouble(o3.get("hargaJasa").toString()), Collectors.groupingBy( + o4 -> Double.parseDouble(o4.get("hargaJual").toString()), Collectors + .groupingBy( o5 -> Integer.parseInt(o5.get("idKelompokPasien") .toString()), - Collectors.groupingBy(o6 -> o6.get("tanggal").toString()))))))); + Collectors.groupingBy( + o6 -> o6.get("keterangan").toString()))))))); List> result = new ArrayList<>(); - collectTanggal.forEach((k1, v1) -> v1.forEach((k2, v2) -> v2 + collected.forEach((k1, v1) -> v1.forEach((k2, v2) -> v2 .forEach((k3, v3) -> v3.forEach((k4, v4) -> v4.forEach((k5, v5) -> v5.forEach((k6, v6) -> { HashMap map = new HashMap<>(); map.put("idProduk", k1); @@ -1684,44 +1779,9 @@ public class PelayananPasienServiceImpl extends BaseVoServiceImpl implements Pel map.put("hargaJasa", k3); map.put("hargaJual", k4); map.put("idKelompokPasien", k5); - map.put("tanggal", k6); - List norecs = v6.stream().map(e -> e.get("idPelayananPasienPetugas").toString()) - .collect(Collectors.toList()); - map.put("norecs", norecs); - double jumlah = v6.stream().mapToDouble(e -> Double.parseDouble(e.get("jumlah").toString())).sum(); - map.put("jumlah", jumlah); - Optional> first = v6.stream().findFirst(); - first.ifPresent(e -> { - map.put("namaProduk", e.get("namaProduk").toString()); - map.put("kelompokPasien", e.get("kelompokPasien").toString()); - map.put("tglPelayanan", e.get("tglPelayanan")); - map.put("sortIdKelompokPasien", Integer.parseInt(e.get("sortIdKelompokPasien").toString())); - map.put("sortIdKelas", Integer.parseInt(e.get("sortIdKelas").toString())); - }); - result.add(map); - })))))); - return result; - } - - private List> groupingKategoriRemun(List> data) { - Map>>>>>> collected = data - .stream() - .collect(Collectors.groupingBy(o1 -> Integer.parseInt(o1.get("idProduk").toString()), - Collectors.groupingBy(o2 -> o2.get("persenJasa").toString(), Collectors.groupingBy( - o3 -> Double.parseDouble(o3.get("hargaJasa").toString()), Collectors.groupingBy( - o4 -> Double.parseDouble(o4.get("hargaJual").toString()), Collectors.groupingBy( - o5 -> Integer.parseInt(o5.get("idKelompokPasien").toString()))))))); - List> result = new ArrayList<>(); - collected.forEach((k1, v1) -> v1 - .forEach((k2, v2) -> v2.forEach((k3, v3) -> v3.forEach((k4, v4) -> v4.forEach((k5, v5) -> { - HashMap map = new HashMap<>(); - map.put("idProduk", k1); - map.put("persenJasa", k2); - map.put("hargaJasa", k3); - map.put("hargaJual", k4); - map.put("idKelompokPasien", k5); + map.put("keterangan", k6); List> detail = new ArrayList<>(); - v5.forEach(d -> { + v6.forEach(d -> { Map mapCount = new HashMap<>(); mapCount.put("jumlah", d.get("jumlah")); mapCount.put("norecs", d.get("norecs")); @@ -1729,20 +1789,21 @@ public class PelayananPasienServiceImpl extends BaseVoServiceImpl implements Pel detail.add(mapCount); }); map.put("detail", detail); - double jumlah = v5.stream().mapToDouble(e -> Double.parseDouble(e.get("jumlah").toString())).sum(); + double jumlah = v6.stream().mapToDouble(e -> Double.parseDouble(e.get("jumlah").toString())).sum(); map.put("jumlah", jumlah); double jumlahHargaJasa = jumlah * Double.parseDouble(map.get("hargaJasa").toString()); map.put("jumlahHargaJasa", jumlahHargaJasa); - Optional> first = v5.stream().findFirst(); + Optional> first = v6.stream().findFirst(); first.ifPresent(e -> { map.put("namaProduk", e.get("namaProduk").toString()); map.put("kelompokPasien", e.get("kelompokPasien").toString()); + map.put("keterangan", e.get("keterangan").toString()); map.put("tglPelayanan", e.get("tglPelayanan")); map.put("sortIdKelompokPasien", Integer.parseInt(e.get("sortIdKelompokPasien").toString())); map.put("sortIdKelas", Integer.parseInt(e.get("sortIdKelas").toString())); }); result.add(map); - }))))); + })))))); return result; } @@ -1812,6 +1873,34 @@ public class PelayananPasienServiceImpl extends BaseVoServiceImpl implements Pel if (Double.parseDouble(d.get("hargaJasa").toString()) != 0.0) d.put("hargaJasa", persenJasaDokterUmumHD / 100 * Double.parseDouble(d.get("hargaJual").toString())); + } else if (BEDAH_SENTRAL.equals(d.get("idDepartemen")) && DOKTER_PEMERIKSA.equals(d.get("idJenisPelaksana")) + && CommonUtil.isNotNullOrEmpty(d.get("idSayatan"))) { + d.put("persenJasa", persenOperator + "%"); + if (Double.parseDouble(d.get("hargaJasa").toString()) != 0.0) + d.put("hargaJasa", + persenOperator / 100 + * (Double.parseDouble(d.get("hargaJual").toString()) + - (Double.parseDouble(d.get("persenSayatan").toString()) / 100 + * Double.parseDouble(d.get("hargaJual").toString())))); + } else if (BEDAH_SENTRAL.equals(d.get("idDepartemen")) + && ASISTEN_SPESIALIS.equals(d.get("idJenisPelaksana")) + && CommonUtil.isNotNullOrEmpty(d.get("idSayatan"))) { + d.put("persenJasa", persenAsistenIBS + "%"); + if (Double.parseDouble(d.get("hargaJasa").toString()) != 0.0) + d.put("hargaJasa", + persenAsistenIBS / 100 + * (Double.parseDouble(d.get("hargaJual").toString()) + - (Double.parseDouble(d.get("persenSayatan").toString()) / 100 + * Double.parseDouble(d.get("hargaJual").toString())))); + } else if (BEDAH_SENTRAL.equals(d.get("idDepartemen")) && DOKTER_ANASTESI.equals(d.get("idJenisPelaksana")) + && CommonUtil.isNotNullOrEmpty(d.get("idSayatan"))) { + d.put("persenJasa", persenAnestesi + "%"); + if (Double.parseDouble(d.get("hargaJasa").toString()) != 0.0) + d.put("hargaJasa", + persenAnestesi / 100 + * (Double.parseDouble(d.get("hargaJual").toString()) + - (Double.parseDouble(d.get("persenSayatan").toString()) / 100 + * Double.parseDouble(d.get("hargaJual").toString())))); } else if (BEDAH_SENTRAL.equals(d.get("idDepartemen")) && DOKTER_PEMERIKSA.equals(d.get("idJenisPelaksana"))) { d.put("persenJasa", persenOperator + "%"); @@ -1936,50 +2025,7 @@ public class PelayananPasienServiceImpl extends BaseVoServiceImpl implements Pel } private List> groupingTanggalFfs(List> listData) { - Map>>>>>>>> collectTanggal = listData - .stream() - .collect(Collectors.groupingBy(o1 -> Integer.parseInt(o1.get("idProduk").toString()), - Collectors.groupingBy(o2 -> o2.get("persenJasa").toString(), Collectors.groupingBy( - o3 -> Double.parseDouble(o3.get("hargaJasa").toString()), Collectors.groupingBy( - o4 -> Double.parseDouble(o4.get("hargaJual").toString()), Collectors - .groupingBy( - o5 -> Integer.parseInt( - o5.get("idKelompokPasien").toString()), - Collectors.groupingBy(o6 -> o6.get("jenisRuangan").toString(), - Collectors.groupingBy( - o7 -> o7.get("tanggal").toString())))))))); - List> result = new ArrayList<>(); - collectTanggal.forEach((k1, v1) -> v1.forEach((k2, v2) -> v2.forEach((k3, v3) -> v3 - .forEach((k4, v4) -> v4.forEach((k5, v5) -> v5.forEach((k6, v6) -> v6.forEach((k7, v7) -> { - HashMap map = new HashMap<>(); - map.put("idProduk", k1); - map.put("persenJasa", k2); - map.put("hargaJasa", k3); - map.put("hargaJual", k4); - map.put("idKelompokPasien", k5); - map.put("jenisRuangan", k6); - map.put("tanggal", k7); - List norecs = v7.stream().map(e -> e.get("idPelayananPasienPetugas").toString()) - .collect(Collectors.toList()); - map.put("norecs", norecs); - double jumlah = v7.stream().mapToDouble(e -> Double.parseDouble(e.get("jumlah").toString())).sum(); - map.put("jumlah", jumlah); - Optional> first = v7.stream().findFirst(); - first.ifPresent(e -> { - map.put("namaProduk", e.get("namaProduk").toString()); - map.put("kelompokPasien", e.get("kelompokPasien").toString()); - map.put("tglPelayanan", e.get("tglPelayanan")); - map.put("sortIdKelompokPasien", Integer.parseInt(e.get("sortIdKelompokPasien").toString())); - map.put("sortIdKelas", Integer.parseInt(e.get("sortIdKelas").toString())); - map.put("jenisRuangan", e.get("jenisRuangan").toString()); - }); - result.add(map); - }))))))); - return result; - } - - private List> groupingKategoriFfs(List> data) { - Map>>>>>>> collected = data + Map>>>>>>>>> collectTanggal = listData .stream() .collect(Collectors.groupingBy(o1 -> Integer.parseInt(o1.get("idProduk").toString()), Collectors.groupingBy(o2 -> o2.get("persenJasa").toString(), Collectors.groupingBy( @@ -1988,11 +2034,14 @@ public class PelayananPasienServiceImpl extends BaseVoServiceImpl implements Pel .groupingBy( o5 -> Integer.parseInt(o5.get("idKelompokPasien") .toString()), - Collectors.groupingBy( - o6 -> o6.get("jenisRuangan").toString()))))))); + Collectors.groupingBy(o6 -> o6.get("jenisRuangan").toString(), + Collectors.groupingBy( + o7 -> o7.get("keterangan").toString(), + Collectors.groupingBy(o7 -> o7.get("tanggal") + .toString()))))))))); List> result = new ArrayList<>(); - collected.forEach((k1, v1) -> v1.forEach((k2, v2) -> v2 - .forEach((k3, v3) -> v3.forEach((k4, v4) -> v4.forEach((k5, v5) -> v5.forEach((k6, v6) -> { + collectTanggal.forEach((k1, v1) -> v1.forEach((k2, v2) -> v2.forEach((k3, v3) -> v3.forEach((k4, v4) -> v4 + .forEach((k5, v5) -> v5.forEach((k6, v6) -> v6.forEach((k7, v7) -> v7.forEach((k8, v8) -> { HashMap map = new HashMap<>(); map.put("idProduk", k1); map.put("persenJasa", k2); @@ -2000,20 +2049,14 @@ public class PelayananPasienServiceImpl extends BaseVoServiceImpl implements Pel map.put("hargaJual", k4); map.put("idKelompokPasien", k5); map.put("jenisRuangan", k6); - List> detail = new ArrayList<>(); - v6.forEach(d -> { - Map mapCount = new HashMap<>(); - mapCount.put("jumlah", d.get("jumlah")); - mapCount.put("norecs", d.get("norecs")); - mapCount.put("tanggal", d.get("tanggal")); - detail.add(mapCount); - }); - map.put("detail", detail); - double jumlah = v6.stream().mapToDouble(e -> Double.parseDouble(e.get("jumlah").toString())).sum(); + map.put("keterangan", k7); + map.put("tanggal", k8); + List norecs = v8.stream().map(e -> e.get("idPelayananPasienPetugas").toString()) + .collect(Collectors.toList()); + map.put("norecs", norecs); + double jumlah = v8.stream().mapToDouble(e -> Double.parseDouble(e.get("jumlah").toString())).sum(); map.put("jumlah", jumlah); - double jumlahHargaJasa = jumlah * Double.parseDouble(map.get("hargaJasa").toString()); - map.put("jumlahHargaJasa", jumlahHargaJasa); - Optional> first = v6.stream().findFirst(); + Optional> first = v8.stream().findFirst(); first.ifPresent(e -> { map.put("namaProduk", e.get("namaProduk").toString()); map.put("kelompokPasien", e.get("kelompokPasien").toString()); @@ -2021,9 +2064,62 @@ public class PelayananPasienServiceImpl extends BaseVoServiceImpl implements Pel map.put("sortIdKelompokPasien", Integer.parseInt(e.get("sortIdKelompokPasien").toString())); map.put("sortIdKelas", Integer.parseInt(e.get("sortIdKelas").toString())); map.put("jenisRuangan", e.get("jenisRuangan").toString()); + map.put("keterangan", e.get("keterangan").toString()); }); result.add(map); - })))))); + })))))))); + return result; + } + + private List> groupingKategoriFfs(List> data) { + Map>>>>>>>> collected = data + .stream() + .collect(Collectors.groupingBy(o1 -> Integer.parseInt(o1.get("idProduk").toString()), + Collectors.groupingBy(o2 -> o2.get("persenJasa").toString(), + Collectors.groupingBy(o3 -> Double.parseDouble(o3.get("hargaJasa").toString()), + Collectors.groupingBy(o4 -> Double.parseDouble(o4.get("hargaJual").toString()), + Collectors.groupingBy( + o5 -> Integer.parseInt( + o5.get("idKelompokPasien").toString()), + Collectors.groupingBy(o6 -> o6.get("jenisRuangan").toString(), + Collectors.groupingBy( + o7 -> o7.get("keterangan").toString())))))))); + List> result = new ArrayList<>(); + collected.forEach((k1, v1) -> v1.forEach((k2, v2) -> v2.forEach((k3, v3) -> v3 + .forEach((k4, v4) -> v4.forEach((k5, v5) -> v5.forEach((k6, v6) -> v6.forEach((k7, v7) -> { + HashMap map = new HashMap<>(); + map.put("idProduk", k1); + map.put("persenJasa", k2); + map.put("hargaJasa", k3); + map.put("hargaJual", k4); + map.put("idKelompokPasien", k5); + map.put("jenisRuangan", k6); + map.put("keterangan", k7); + List> detail = new ArrayList<>(); + v7.forEach(d -> { + Map mapCount = new HashMap<>(); + mapCount.put("jumlah", d.get("jumlah")); + mapCount.put("norecs", d.get("norecs")); + mapCount.put("tanggal", d.get("tanggal")); + detail.add(mapCount); + }); + map.put("detail", detail); + double jumlah = v7.stream().mapToDouble(e -> Double.parseDouble(e.get("jumlah").toString())).sum(); + map.put("jumlah", jumlah); + double jumlahHargaJasa = jumlah * Double.parseDouble(map.get("hargaJasa").toString()); + map.put("jumlahHargaJasa", jumlahHargaJasa); + Optional> first = v7.stream().findFirst(); + first.ifPresent(e -> { + map.put("namaProduk", e.get("namaProduk").toString()); + map.put("kelompokPasien", e.get("kelompokPasien").toString()); + map.put("tglPelayanan", e.get("tglPelayanan")); + map.put("sortIdKelompokPasien", Integer.parseInt(e.get("sortIdKelompokPasien").toString())); + map.put("sortIdKelas", Integer.parseInt(e.get("sortIdKelas").toString())); + map.put("jenisRuangan", e.get("jenisRuangan").toString()); + map.put("keterangan", e.get("keterangan").toString()); + }); + result.add(map); + }))))))); return result; } @@ -2093,6 +2189,34 @@ public class PelayananPasienServiceImpl extends BaseVoServiceImpl implements Pel if (Double.parseDouble(d.get("hargaJasa").toString()) != 0.0) d.put("hargaJasa", persenJasaDokterUmumHD / 100 * Double.parseDouble(d.get("hargaJual").toString())); + } else if (BEDAH_SENTRAL.equals(d.get("idDepartemen")) && DOKTER_PEMERIKSA.equals(d.get("idJenisPelaksana")) + && CommonUtil.isNotNullOrEmpty(d.get("idSayatan"))) { + d.put("persenJasa", persenOperatorIBS + "%"); + if (Double.parseDouble(d.get("hargaJasa").toString()) != 0.0) + d.put("hargaJasa", + persenOperatorIBS / 100 + * (Double.parseDouble(d.get("hargaJual").toString()) + - (Double.parseDouble(d.get("persenSayatan").toString()) / 100 + * Double.parseDouble(d.get("hargaJual").toString())))); + } else if (BEDAH_SENTRAL.equals(d.get("idDepartemen")) + && ASISTEN_SPESIALIS.equals(d.get("idJenisPelaksana")) + && CommonUtil.isNotNullOrEmpty(d.get("idSayatan"))) { + d.put("persenJasa", persenAsistenIBS + "%"); + if (Double.parseDouble(d.get("hargaJasa").toString()) != 0.0) + d.put("hargaJasa", + persenAsistenIBS / 100 + * (Double.parseDouble(d.get("hargaJual").toString()) + - (Double.parseDouble(d.get("persenSayatan").toString()) / 100 + * Double.parseDouble(d.get("hargaJual").toString())))); + } else if (BEDAH_SENTRAL.equals(d.get("idDepartemen")) && DOKTER_ANASTESI.equals(d.get("idJenisPelaksana")) + && CommonUtil.isNotNullOrEmpty(d.get("idSayatan"))) { + d.put("persenJasa", persenAnestesi + "%"); + if (Double.parseDouble(d.get("hargaJasa").toString()) != 0.0) + d.put("hargaJasa", + persenAnestesi / 100 + * (Double.parseDouble(d.get("hargaJual").toString()) + - (Double.parseDouble(d.get("persenSayatan").toString()) / 100 + * Double.parseDouble(d.get("hargaJual").toString())))); } else if (BEDAH_SENTRAL.equals(d.get("idDepartemen")) && DOKTER_PEMERIKSA.equals(d.get("idJenisPelaksana"))) { d.put("persenJasa", persenOperatorIBS + "%");