Update PelayananPasienServiceImpl.java

Perbaikan pengecekan kategori null saat pembentukan data logbook dokter
This commit is contained in:
Salman Manoe 2023-07-04 14:59:11 +07:00
parent 9012ce1a28
commit 92fa203bf9

View File

@ -506,18 +506,21 @@ public class PelayananPasienServiceImpl extends BaseVoServiceImpl implements Pel
&& Master.JenisPetugasPelaksana.ASISTEN_SPESIALIS.equals(d.get("idJenisPelaksana"))) { && Master.JenisPetugasPelaksana.ASISTEN_SPESIALIS.equals(d.get("idJenisPelaksana"))) {
d.put("hargaJasa", persenRemunDokterUmumHD / 100 * Double.parseDouble(d.get("hargaJual").toString())); d.put("hargaJasa", persenRemunDokterUmumHD / 100 * Double.parseDouble(d.get("hargaJual").toString()));
} else if (Master.Departemen.BEDAH_SENTRAL.equals(d.get("idDepartemen")) } else if (Master.Departemen.BEDAH_SENTRAL.equals(d.get("idDepartemen"))
&& CommonUtil.isNotNullOrEmpty(d.get("idKelompokPasien"))
&& Arrays.asList(Master.KelompokPasien.KELOMPOK_BPJS) && Arrays.asList(Master.KelompokPasien.KELOMPOK_BPJS)
.contains(Integer.parseInt(d.get("idKelompokPasien").toString())) .contains(Integer.parseInt(d.get("idKelompokPasien").toString()))
&& Master.JenisPetugasPelaksana.DOKTER_PEMERIKSA.equals(d.get("idJenisPelaksana"))) { && Master.JenisPetugasPelaksana.DOKTER_PEMERIKSA.equals(d.get("idJenisPelaksana"))) {
double persenJasa = persenOperatorIBS / 100; double persenJasa = persenOperatorIBS / 100;
d.put("hargaJasa", persenJasa * persenTarifIBS * Double.parseDouble(d.get("hargaJual").toString())); d.put("hargaJasa", persenJasa * persenTarifIBS * Double.parseDouble(d.get("hargaJual").toString()));
} else if (Master.Departemen.BEDAH_SENTRAL.equals(d.get("idDepartemen")) } else if (Master.Departemen.BEDAH_SENTRAL.equals(d.get("idDepartemen"))
&& CommonUtil.isNotNullOrEmpty(d.get("idKelompokPasien"))
&& Arrays.asList(Master.KelompokPasien.KELOMPOK_BPJS) && Arrays.asList(Master.KelompokPasien.KELOMPOK_BPJS)
.contains(Integer.parseInt(d.get("idKelompokPasien").toString())) .contains(Integer.parseInt(d.get("idKelompokPasien").toString()))
&& Master.JenisPetugasPelaksana.ASISTEN_SPESIALIS.equals(d.get("idJenisPelaksana"))) { && Master.JenisPetugasPelaksana.ASISTEN_SPESIALIS.equals(d.get("idJenisPelaksana"))) {
double persenJasa = persenAsistenIBS / 100; double persenJasa = persenAsistenIBS / 100;
d.put("hargaJasa", persenJasa * persenTarifIBS * Double.parseDouble(d.get("hargaJual").toString())); d.put("hargaJasa", persenJasa * persenTarifIBS * Double.parseDouble(d.get("hargaJual").toString()));
} else if (Master.Departemen.BEDAH_SENTRAL.equals(d.get("idDepartemen")) } else if (Master.Departemen.BEDAH_SENTRAL.equals(d.get("idDepartemen"))
&& CommonUtil.isNotNullOrEmpty(d.get("idKelompokPasien"))
&& Arrays.asList(Master.KelompokPasien.KELOMPOK_BPJS) && Arrays.asList(Master.KelompokPasien.KELOMPOK_BPJS)
.contains(Integer.parseInt(d.get("idKelompokPasien").toString())) .contains(Integer.parseInt(d.get("idKelompokPasien").toString()))
&& Master.JenisPetugasPelaksana.DOKTER_ANASTESI.equals(d.get("idJenisPelaksana"))) { && Master.JenisPetugasPelaksana.DOKTER_ANASTESI.equals(d.get("idJenisPelaksana"))) {
@ -544,7 +547,7 @@ public class PelayananPasienServiceImpl extends BaseVoServiceImpl implements Pel
d.put("hargaJasa", persenRemunDokterPA / 100 * Double.parseDouble(d.get("hargaJual").toString())); d.put("hargaJasa", persenRemunDokterPA / 100 * Double.parseDouble(d.get("hargaJual").toString()));
} else if (Master.Departemen.LABORATORIUM.equals(d.get("idDepartemen"))) { } else if (Master.Departemen.LABORATORIUM.equals(d.get("idDepartemen"))) {
d.put("hargaJasa", persenLaboratorium / 100 * Double.parseDouble(d.get("hargaJual").toString())); d.put("hargaJasa", persenLaboratorium / 100 * Double.parseDouble(d.get("hargaJual").toString()));
} else if (Arrays.asList(Master.Ruangan.ICU_NICU) } else if (CommonUtil.isNotNullOrEmpty(d.get("idRuangan")) && Arrays.asList(Master.Ruangan.ICU_NICU)
.contains(Integer.parseInt(d.get("idRuangan").toString()))) { .contains(Integer.parseInt(d.get("idRuangan").toString()))) {
double persenJasa = persenTindakan / 100; double persenJasa = persenTindakan / 100;
d.put("hargaJasa", persenJasa * persenTarifICU * Double.parseDouble(d.get("hargaJual").toString())); d.put("hargaJasa", persenJasa * persenTarifICU * Double.parseDouble(d.get("hargaJual").toString()));
@ -557,8 +560,9 @@ public class PelayananPasienServiceImpl extends BaseVoServiceImpl implements Pel
*/ */
List<Map<String, Object>> rawDataBpjs0 = new ArrayList<>(); List<Map<String, Object>> rawDataBpjs0 = new ArrayList<>();
for (Map<String, Object> d : listData) for (Map<String, Object> d : listData)
if (Arrays.asList(Master.KelompokPasien.KELOMPOK_BPJS) if (CommonUtil.isNotNullOrEmpty(d.get("idKelompokPasien"))
.contains(Integer.parseInt(d.get("idKelompokPasien").toString()))) && Arrays.asList(Master.KelompokPasien.KELOMPOK_BPJS)
.contains(Integer.parseInt(d.get("idKelompokPasien").toString())))
rawDataBpjs0.add(d); rawDataBpjs0.add(d);
/* /*
* Filter tindakan operasi untuk pasien BPJS hanya diambil tarif * Filter tindakan operasi untuk pasien BPJS hanya diambil tarif
@ -656,7 +660,9 @@ public class PelayananPasienServiceImpl extends BaseVoServiceImpl implements Pel
*/ */
List<Map<String, Object>> listEpisode = new ArrayList<>(); List<Map<String, Object>> listEpisode = new ArrayList<>();
for (Map<String, Object> d : rawDataBpjs2) { for (Map<String, Object> d : rawDataBpjs2) {
if (Arrays.asList(Master.Ruangan.ICU_NICU).contains(Integer.parseInt(d.get("idRuangan").toString())) if (CommonUtil.isNotNullOrEmpty(d.get("idRuangan"))
&& Arrays.asList(Master.Ruangan.ICU_NICU)
.contains(Integer.parseInt(d.get("idRuangan").toString()))
&& Master.GolonganProduk.VISIT.equals(d.get("idGolonganProduk"))) { && Master.GolonganProduk.VISIT.equals(d.get("idGolonganProduk"))) {
boolean existEpisode = false; boolean existEpisode = false;
for (Map<String, Object> e : listEpisode) for (Map<String, Object> e : listEpisode)
@ -681,7 +687,9 @@ public class PelayananPasienServiceImpl extends BaseVoServiceImpl implements Pel
for (Map<String, Object> d : rawDataBpjs2) { for (Map<String, Object> d : rawDataBpjs2) {
int count = 1; int count = 1;
for (Map<String, Object> e : listEpisode) for (Map<String, Object> e : listEpisode)
if (Arrays.asList(Master.Ruangan.ICU_NICU).contains(Integer.parseInt(d.get("idRuangan").toString())) if (CommonUtil.isNotNullOrEmpty(d.get("idRuangan"))
&& Arrays.asList(Master.Ruangan.ICU_NICU)
.contains(Integer.parseInt(d.get("idRuangan").toString()))
&& Master.GolonganProduk.VISIT.equals(d.get("idGolonganProduk"))) { && Master.GolonganProduk.VISIT.equals(d.get("idGolonganProduk"))) {
if (d.get("idPasienDaftar").toString().equals(e.get("id")) if (d.get("idPasienDaftar").toString().equals(e.get("id"))
&& Integer.valueOf(d.get("idProduk").toString()).equals(e.get("idProduk")) && Integer.valueOf(d.get("idProduk").toString()).equals(e.get("idProduk"))
@ -696,7 +704,9 @@ public class PelayananPasienServiceImpl extends BaseVoServiceImpl implements Pel
} else { } else {
break; break;
} }
if (!Arrays.asList(Master.Ruangan.ICU_NICU).contains(Integer.parseInt(d.get("idRuangan").toString())) if ((CommonUtil.isNullOrEmpty(d.get("idRuangan"))
|| (CommonUtil.isNotNullOrEmpty(d.get("idRuangan")) && !Arrays.asList(Master.Ruangan.ICU_NICU)
.contains(Integer.parseInt(d.get("idRuangan").toString()))))
|| !Master.GolonganProduk.VISIT.equals(d.get("idGolonganProduk")) && count == 1) || !Master.GolonganProduk.VISIT.equals(d.get("idGolonganProduk")) && count == 1)
rawDataBpjs3.add(d); rawDataBpjs3.add(d);
} }
@ -715,7 +725,9 @@ public class PelayananPasienServiceImpl extends BaseVoServiceImpl implements Pel
*/ */
List<Map<String, Object>> listEpisode = new ArrayList<>(); List<Map<String, Object>> listEpisode = new ArrayList<>();
for (Map<String, Object> d : rawDataBpjs3) { for (Map<String, Object> d : rawDataBpjs3) {
if (Arrays.asList(Master.Ruangan.ICU_NICU).contains(Integer.parseInt(d.get("idRuangan").toString())) if (CommonUtil.isNotNullOrEmpty(d.get("idRuangan"))
&& Arrays.asList(Master.Ruangan.ICU_NICU)
.contains(Integer.parseInt(d.get("idRuangan").toString()))
&& idsMonitoringHemodinamikGagalOrgan && idsMonitoringHemodinamikGagalOrgan
.contains(Integer.parseInt(d.get("idProduk").toString()))) { .contains(Integer.parseInt(d.get("idProduk").toString()))) {
boolean existEpisode = false; boolean existEpisode = false;
@ -741,7 +753,9 @@ public class PelayananPasienServiceImpl extends BaseVoServiceImpl implements Pel
for (Map<String, Object> d : rawDataBpjs3) { for (Map<String, Object> d : rawDataBpjs3) {
int count = 1; int count = 1;
for (Map<String, Object> e : listEpisode) for (Map<String, Object> e : listEpisode)
if (Arrays.asList(Master.Ruangan.ICU_NICU).contains(Integer.parseInt(d.get("idRuangan").toString())) if (CommonUtil.isNotNullOrEmpty(d.get("idRuangan"))
&& Arrays.asList(Master.Ruangan.ICU_NICU)
.contains(Integer.parseInt(d.get("idRuangan").toString()))
&& idsMonitoringHemodinamikGagalOrgan && idsMonitoringHemodinamikGagalOrgan
.contains(Integer.parseInt(d.get("idProduk").toString()))) { .contains(Integer.parseInt(d.get("idProduk").toString()))) {
if (d.get("idPasienDaftar").toString().equals(e.get("id")) if (d.get("idPasienDaftar").toString().equals(e.get("id"))
@ -757,7 +771,9 @@ public class PelayananPasienServiceImpl extends BaseVoServiceImpl implements Pel
} else { } else {
break; break;
} }
if (!Arrays.asList(Master.Ruangan.ICU_NICU).contains(Integer.parseInt(d.get("idRuangan").toString())) if ((CommonUtil.isNullOrEmpty(d.get("idRuangan"))
|| (CommonUtil.isNotNullOrEmpty(d.get("idRuangan")) && !Arrays.asList(Master.Ruangan.ICU_NICU)
.contains(Integer.parseInt(d.get("idRuangan").toString()))))
|| !idsMonitoringHemodinamikGagalOrgan.contains(Integer.parseInt(d.get("idProduk").toString())) || !idsMonitoringHemodinamikGagalOrgan.contains(Integer.parseInt(d.get("idProduk").toString()))
&& count == 1) && count == 1)
rawDataBpjs4.add(d); rawDataBpjs4.add(d);
@ -833,8 +849,10 @@ public class PelayananPasienServiceImpl extends BaseVoServiceImpl implements Pel
*/ */
List<Map<String, Object>> listEpisode = new ArrayList<>(); List<Map<String, Object>> listEpisode = new ArrayList<>();
for (Map<String, Object> d : listData) { for (Map<String, Object> d : listData) {
if (!Arrays.asList(Master.KelompokPasien.KELOMPOK_BPJS) if ((CommonUtil.isNullOrEmpty(d.get("idKelompokPasien"))
.contains(Integer.parseInt(d.get("idKelompokPasien").toString())) || (CommonUtil.isNotNullOrEmpty(d.get("idKelompokPasien"))
&& !Arrays.asList(Master.KelompokPasien.KELOMPOK_BPJS)
.contains(Integer.parseInt(d.get("idKelompokPasien").toString()))))
&& Master.Departemen.BEDAH_SENTRAL.equals(d.get("idDepartemen"))) { && Master.Departemen.BEDAH_SENTRAL.equals(d.get("idDepartemen"))) {
boolean existEpisode = false; boolean existEpisode = false;
for (Map<String, Object> e : listEpisode) for (Map<String, Object> e : listEpisode)
@ -856,8 +874,10 @@ public class PelayananPasienServiceImpl extends BaseVoServiceImpl implements Pel
*/ */
for (Map<String, Object> d : listData) { for (Map<String, Object> d : listData) {
for (Map<String, Object> e : listEpisode) { for (Map<String, Object> e : listEpisode) {
if (!Arrays.asList(Master.KelompokPasien.KELOMPOK_BPJS) if ((CommonUtil.isNullOrEmpty(d.get("idKelompokPasien"))
.contains(Integer.parseInt(d.get("idKelompokPasien").toString())) || (CommonUtil.isNotNullOrEmpty(d.get("idKelompokPasien"))
&& !Arrays.asList(Master.KelompokPasien.KELOMPOK_BPJS)
.contains(Integer.parseInt(d.get("idKelompokPasien").toString()))))
&& Master.Departemen.BEDAH_SENTRAL.equals(d.get("idDepartemen")) && Master.Departemen.BEDAH_SENTRAL.equals(d.get("idDepartemen"))
&& d.get("idPasienDaftar").toString().equals(e.get("id")) && d.get("idPasienDaftar").toString().equals(e.get("id"))
&& Integer.valueOf(d.get("idProduk").toString()).equals(e.get("idProduk"))) { && Integer.valueOf(d.get("idProduk").toString()).equals(e.get("idProduk"))) {
@ -1017,8 +1037,10 @@ public class PelayananPasienServiceImpl extends BaseVoServiceImpl implements Pel
LocalDateTime tglJamPelayanan = ((Date) d.get("tglPelayanan")).toInstant() LocalDateTime tglJamPelayanan = ((Date) d.get("tglPelayanan")).toInstant()
.atZone(ZoneId.systemDefault()).toLocalDateTime(); .atZone(ZoneId.systemDefault()).toLocalDateTime();
for (Map<String, Object> j : listJadwalKerja) { for (Map<String, Object> j : listJadwalKerja) {
if (!Arrays.asList(Master.KelompokPasien.KELOMPOK_BPJS) if ((CommonUtil.isNullOrEmpty(d.get("idKelompokPasien"))
.contains(Integer.parseInt(d.get("idKelompokPasien").toString())) || (CommonUtil.isNotNullOrEmpty(d.get("idKelompokPasien"))
&& !Arrays.asList(Master.KelompokPasien.KELOMPOK_BPJS)
.contains(Integer.parseInt(d.get("idKelompokPasien").toString()))))
&& CommonUtil.isNotNullOrEmpty(j.get("jamMasuk"))) { && CommonUtil.isNotNullOrEmpty(j.get("jamMasuk"))) {
LocalDate tglMasuk = ((Date) j.get("tanggal")).toInstant().atZone(ZoneId.systemDefault()) LocalDate tglMasuk = ((Date) j.get("tanggal")).toInstant().atZone(ZoneId.systemDefault())
.toLocalDate(); .toLocalDate();
@ -1050,8 +1072,10 @@ public class PelayananPasienServiceImpl extends BaseVoServiceImpl implements Pel
for (Map<String, Object> j : listJadwalKerja) { for (Map<String, Object> j : listJadwalKerja) {
LocalDate tglMasuk = ((Date) j.get("tanggal")).toInstant().atZone(ZoneId.systemDefault()) LocalDate tglMasuk = ((Date) j.get("tanggal")).toInstant().atZone(ZoneId.systemDefault())
.toLocalDate(); .toLocalDate();
if (!Arrays.asList(Master.KelompokPasien.KELOMPOK_BPJS) if (CommonUtil.isNullOrEmpty(d.get("idKelompokPasien"))
.contains(Integer.parseInt(d.get("idKelompokPasien").toString()))) || (CommonUtil.isNotNullOrEmpty(d.get("idKelompokPasien"))
&& !Arrays.asList(Master.KelompokPasien.KELOMPOK_BPJS)
.contains(Integer.parseInt(d.get("idKelompokPasien").toString()))))
if (CommonUtil.isNullOrEmpty(j.get("jamMasuk"))) { if (CommonUtil.isNullOrEmpty(j.get("jamMasuk"))) {
if (tglPelayanan.isEqual(tglMasuk)) { if (tglPelayanan.isEqual(tglMasuk)) {
listDataLuarJamKerja.add(d); listDataLuarJamKerja.add(d);
@ -1095,21 +1119,25 @@ public class PelayananPasienServiceImpl extends BaseVoServiceImpl implements Pel
* Dokter luar hanya mendapatkan ffs * Dokter luar hanya mendapatkan ffs
*/ */
for (Map<String, Object> next = queuePelayanan.poll(); next != null; next = queuePelayanan.poll()) for (Map<String, Object> next = queuePelayanan.poll(); next != null; next = queuePelayanan.poll())
if (Arrays.asList(Master.KelompokPasien.KELOMPOK_BPJS) if (CommonUtil.isNotNullOrEmpty(next.get("idKelompokPasien"))
.contains(Integer.parseInt(next.get("idKelompokPasien").toString())) && Arrays.asList(Master.KelompokPasien.KELOMPOK_BPJS)
.contains(Integer.parseInt(next.get("idKelompokPasien").toString()))
&& idsDokterBPJSffs.contains(idPegawai)) { && idsDokterBPJSffs.contains(idPegawai)) {
/* /*
* dokter-dokter tertentu yang hanya dapat pasien bpjs * dokter-dokter tertentu yang hanya dapat pasien bpjs
*/ */
listPelayananFfs.add(next); listPelayananFfs.add(next);
} else if (!Arrays.asList(Master.JenisProduk.NONLOGBOOK) } else if (CommonUtil.isNullOrEmpty(next.get("idJenisProduk"))
.contains(Integer.parseInt(next.get("idJenisProduk").toString()))) { || (CommonUtil.isNotNullOrEmpty(next.get("idJenisProduk"))
&& !Arrays.asList(Master.JenisProduk.NONLOGBOOK)
.contains(Integer.parseInt(next.get("idJenisProduk").toString())))) {
listPelayananFfs.add(next); listPelayananFfs.add(next);
} }
} else { } else {
for (Map<String, Object> next = queuePelayanan.poll(); next != null; next = queuePelayanan.poll()) for (Map<String, Object> next = queuePelayanan.poll(); next != null; next = queuePelayanan.poll())
if (Arrays.asList(Master.KelompokPasien.KELOMPOK_BPJS) if (CommonUtil.isNotNullOrEmpty(next.get("idKelompokPasien"))
.contains(Integer.parseInt(next.get("idKelompokPasien").toString()))) { && Arrays.asList(Master.KelompokPasien.KELOMPOK_BPJS)
.contains(Integer.parseInt(next.get("idKelompokPasien").toString()))) {
/* /*
* Urutan alokasi bpjs sebagai urutan prioritas * Urutan alokasi bpjs sebagai urutan prioritas
*/ */
@ -1123,11 +1151,14 @@ public class PelayananPasienServiceImpl extends BaseVoServiceImpl implements Pel
*/ */
listPelayananRemun.add(next); listPelayananRemun.add(next);
capaianRemun += Double.parseDouble(next.get("hargaJasa").toString()); capaianRemun += Double.parseDouble(next.get("hargaJasa").toString());
} else if ((Arrays.asList(Master.Departemen.GRUP_RAWAT_JALAN_UTAMA) } else if (((CommonUtil.isNotNullOrEmpty(next.get("idDepartemen"))
.contains(Integer.parseInt(next.get("idDepartemen").toString())) && Arrays.asList(Master.Departemen.GRUP_RAWAT_JALAN_UTAMA)
.contains(Integer.parseInt(next.get("idDepartemen").toString())))
|| Master.GolonganProduk.VISIT.equals(next.get("idGolonganProduk"))) || Master.GolonganProduk.VISIT.equals(next.get("idGolonganProduk")))
&& !Arrays.asList(Master.JenisProduk.NONLOGBOOK) && (CommonUtil.isNullOrEmpty(next.get("idJenisProduk"))
.contains(Integer.parseInt(next.get("idJenisProduk").toString()))) { || (CommonUtil.isNotNullOrEmpty(next.get("idJenisProduk"))
&& !Arrays.asList(Master.JenisProduk.NONLOGBOOK).contains(
Integer.parseInt(next.get("idJenisProduk").toString()))))) {
/* /*
* Dibatasi hanya di rawat jalan atau visite saja * Dibatasi hanya di rawat jalan atau visite saja
*/ */
@ -1138,28 +1169,32 @@ public class PelayananPasienServiceImpl extends BaseVoServiceImpl implements Pel
/* /*
* Selain dokter-dokter kk pediatrik gawat darurat * Selain dokter-dokter kk pediatrik gawat darurat
*/ */
if (listDetailJenisProduk if (CommonUtil.isNotNullOrEmpty(next.get("idDetailJenisProduk")) && listDetailJenisProduk
.contains(Integer.parseInt(next.get("idDetailJenisProduk").toString()))) { .contains(Integer.parseInt(next.get("idDetailJenisProduk").toString()))) {
/* /*
* Dibatasi oleh daftar jenis tindakan tertentu * Dibatasi oleh daftar jenis tindakan tertentu
*/ */
if (idsRegDJPPenunjangPA if (CommonUtil.isNotNullOrEmpty(next.get("idDetailJenisProduk")) && (idsRegDJPPenunjangPA
.contains(Integer.parseInt(next.get("idDetailJenisProduk").toString())) .contains(Integer.parseInt(next.get("idDetailJenisProduk").toString()))
|| idsRegDJPPenunjangPK || idsRegDJPPenunjangPK
.contains(Integer.parseInt(next.get("idDetailJenisProduk").toString()))) { .contains(Integer.parseInt(next.get("idDetailJenisProduk").toString())))) {
/* /*
* Pengecualian daftar tindakan penunjang yang * Pengecualian daftar tindakan penunjang yang
* bebas klaim * bebas klaim
*/ */
listPelayananRemun.add(next); listPelayananRemun.add(next);
capaianRemun += Double.parseDouble(next.get("hargaJasa").toString()); capaianRemun += Double.parseDouble(next.get("hargaJasa").toString());
} else if (!Arrays.asList(Master.JenisProduk.NONLOGBOOK) } else if (CommonUtil.isNullOrEmpty(next.get("idJenisProduk"))
.contains(Integer.parseInt(next.get("idJenisProduk").toString()))) { || (CommonUtil.isNotNullOrEmpty(next.get("idJenisProduk"))
&& !Arrays.asList(Master.JenisProduk.NONLOGBOOK).contains(
Integer.parseInt(next.get("idJenisProduk").toString())))) {
listPelayananRemun.add(next); listPelayananRemun.add(next);
capaianRemun += Double.parseDouble(next.get("hargaJasa").toString()); capaianRemun += Double.parseDouble(next.get("hargaJasa").toString());
} }
} else if (!listDetailJenisProduk } else if ((CommonUtil.isNullOrEmpty(next.get("idDetailJenisProduk"))
.contains(Integer.parseInt(next.get("idDetailJenisProduk").toString())) || (CommonUtil.isNotNullOrEmpty(next.get("idDetailJenisProduk"))
&& !listDetailJenisProduk.contains(
Integer.parseInt(next.get("idDetailJenisProduk").toString()))))
&& Master.Departemen.IGD.equals(next.get("idDepartemen")) && Master.Departemen.IGD.equals(next.get("idDepartemen"))
&& drKsmUmumList.contains(idPegawai) && drKsmUmumList.contains(idPegawai)
&& idsDokterUmumIGD.contains(Integer.parseInt(next.get("idProduk").toString()))) { && idsDokterUmumIGD.contains(Integer.parseInt(next.get("idProduk").toString()))) {
@ -1168,8 +1203,10 @@ public class PelayananPasienServiceImpl extends BaseVoServiceImpl implements Pel
*/ */
listPelayananRemun.add(next); listPelayananRemun.add(next);
capaianRemun += Double.parseDouble(next.get("hargaJasa").toString()); capaianRemun += Double.parseDouble(next.get("hargaJasa").toString());
} else if (!listDetailJenisProduk } else if ((CommonUtil.isNullOrEmpty(next.get("idDetailJenisProduk"))
.contains(Integer.parseInt(next.get("idDetailJenisProduk").toString())) || (CommonUtil.isNotNullOrEmpty(next.get("idDetailJenisProduk"))
&& !listDetailJenisProduk.contains(
Integer.parseInt(next.get("idDetailJenisProduk").toString()))))
&& drKkPerinatologiList.contains(idPegawai) && drKkPerinatologiList.contains(idPegawai)
&& idsDokterPerinatologi.contains(Integer.parseInt(next.get("idProduk").toString()))) { && idsDokterPerinatologi.contains(Integer.parseInt(next.get("idProduk").toString()))) {
/* /*
@ -1193,23 +1230,26 @@ public class PelayananPasienServiceImpl extends BaseVoServiceImpl implements Pel
capaianRemun += Double.parseDouble(next.get("hargaJasa").toString()); capaianRemun += Double.parseDouble(next.get("hargaJasa").toString());
} }
} else if (CommonUtil.isNotNullOrEmpty(listDetailJenisProdukException) } else if (CommonUtil.isNotNullOrEmpty(listDetailJenisProdukException)
&& CommonUtil.isNotNullOrEmpty(next.get("idDetailJenisProduk"))
&& listDetailJenisProdukException && listDetailJenisProdukException
.contains(Integer.parseInt(next.get("idDetailJenisProduk").toString()))) { .contains(Integer.parseInt(next.get("idDetailJenisProduk").toString()))) {
/* /*
* Diluar pembatasan jenis produk * Diluar pembatasan jenis produk
*/ */
if (idsRegDJPPenunjangPA if (CommonUtil.isNotNullOrEmpty(next.get("idDetailJenisProduk")) && (idsRegDJPPenunjangPA
.contains(Integer.parseInt(next.get("idDetailJenisProduk").toString())) .contains(Integer.parseInt(next.get("idDetailJenisProduk").toString()))
|| idsRegDJPPenunjangPK || idsRegDJPPenunjangPK
.contains(Integer.parseInt(next.get("idDetailJenisProduk").toString()))) { .contains(Integer.parseInt(next.get("idDetailJenisProduk").toString())))) {
/* /*
* Pengecualian daftar tindakan penunjang yang * Pengecualian daftar tindakan penunjang yang
* bebas klaim * bebas klaim
*/ */
listPelayananRemun.add(next); listPelayananRemun.add(next);
capaianRemun += Double.parseDouble(next.get("hargaJasa").toString()); capaianRemun += Double.parseDouble(next.get("hargaJasa").toString());
} else if (!Arrays.asList(Master.JenisProduk.NONLOGBOOK) } else if (CommonUtil.isNullOrEmpty(next.get("idJenisProduk"))
.contains(Integer.parseInt(next.get("idJenisProduk").toString()))) { || (CommonUtil.isNotNullOrEmpty(next.get("idJenisProduk"))
&& !Arrays.asList(Master.JenisProduk.NONLOGBOOK).contains(
Integer.parseInt(next.get("idJenisProduk").toString())))) {
listPelayananRemun.add(next); listPelayananRemun.add(next);
capaianRemun += Double.parseDouble(next.get("hargaJasa").toString()); capaianRemun += Double.parseDouble(next.get("hargaJasa").toString());
} }
@ -1230,11 +1270,14 @@ public class PelayananPasienServiceImpl extends BaseVoServiceImpl implements Pel
*/ */
listPelayananRemun.add(next); listPelayananRemun.add(next);
capaianRemun += Double.parseDouble(next.get("hargaJasa").toString()); capaianRemun += Double.parseDouble(next.get("hargaJasa").toString());
} else if ((Arrays.asList(Master.Departemen.GRUP_RAWAT_JALAN_UTAMA) } else if ((CommonUtil.isNotNullOrEmpty(next.get("idDepartemen"))
.contains(Integer.parseInt(next.get("idDepartemen").toString())) && Arrays.asList(Master.Departemen.GRUP_RAWAT_JALAN_UTAMA)
|| Master.GolonganProduk.VISIT.equals(next.get("idGolonganProduk"))) .contains(Integer.parseInt(next.get("idDepartemen").toString())))
&& !Arrays.asList(Master.JenisProduk.NONLOGBOOK) || Master.GolonganProduk.VISIT.equals(next.get("idGolonganProduk")) && (CommonUtil
.contains(Integer.parseInt(next.get("idJenisProduk").toString()))) { .isNullOrEmpty(next.get("idJenisProduk"))
|| (CommonUtil.isNotNullOrEmpty(next.get("idJenisProduk"))
&& !Arrays.asList(Master.JenisProduk.NONLOGBOOK).contains(
Integer.parseInt(next.get("idJenisProduk").toString()))))) {
/* /*
* Dibatasi hanya di rawat jalan atau visite saja * Dibatasi hanya di rawat jalan atau visite saja
*/ */
@ -1245,28 +1288,32 @@ public class PelayananPasienServiceImpl extends BaseVoServiceImpl implements Pel
/* /*
* Selain dokter-dokter kk pediatrik gawat darurat * Selain dokter-dokter kk pediatrik gawat darurat
*/ */
if (listDetailJenisProduk if (CommonUtil.isNotNullOrEmpty(next.get("idDetailJenisProduk")) && listDetailJenisProduk
.contains(Integer.parseInt(next.get("idDetailJenisProduk").toString()))) { .contains(Integer.parseInt(next.get("idDetailJenisProduk").toString()))) {
/* /*
* Dibatasi oleh daftar jenis tindakan tertentu * Dibatasi oleh daftar jenis tindakan tertentu
*/ */
if (idsRegDJPPenunjangPA if (CommonUtil.isNotNullOrEmpty(next.get("idDetailJenisProduk")) && (idsRegDJPPenunjangPA
.contains(Integer.parseInt(next.get("idDetailJenisProduk").toString())) .contains(Integer.parseInt(next.get("idDetailJenisProduk").toString()))
|| idsRegDJPPenunjangPK || idsRegDJPPenunjangPK
.contains(Integer.parseInt(next.get("idDetailJenisProduk").toString()))) { .contains(Integer.parseInt(next.get("idDetailJenisProduk").toString())))) {
/* /*
* Pengecualian daftar tindakan penunjang yang * Pengecualian daftar tindakan penunjang yang
* bebas klaim * bebas klaim
*/ */
listPelayananRemun.add(next); listPelayananRemun.add(next);
capaianRemun += Double.parseDouble(next.get("hargaJasa").toString()); capaianRemun += Double.parseDouble(next.get("hargaJasa").toString());
} else if (!Arrays.asList(Master.JenisProduk.NONLOGBOOK) } else if (CommonUtil.isNullOrEmpty(next.get("idJenisProduk"))
.contains(Integer.parseInt(next.get("idJenisProduk").toString()))) { || (CommonUtil.isNotNullOrEmpty(next.get("idJenisProduk"))
&& !Arrays.asList(Master.JenisProduk.NONLOGBOOK).contains(
Integer.parseInt(next.get("idJenisProduk").toString())))) {
listPelayananRemun.add(next); listPelayananRemun.add(next);
capaianRemun += Double.parseDouble(next.get("hargaJasa").toString()); capaianRemun += Double.parseDouble(next.get("hargaJasa").toString());
} }
} else if (!listDetailJenisProduk } else if ((CommonUtil.isNullOrEmpty(next.get("idDetailJenisProduk"))
.contains(Integer.parseInt(next.get("idDetailJenisProduk").toString())) || (CommonUtil.isNotNullOrEmpty(next.get("idDetailJenisProduk"))
&& !listDetailJenisProduk.contains(
Integer.parseInt(next.get("idDetailJenisProduk").toString()))))
&& Master.Departemen.IGD.equals(next.get("idDepartemen")) && Master.Departemen.IGD.equals(next.get("idDepartemen"))
&& drKsmUmumList.contains(idPegawai) && drKsmUmumList.contains(idPegawai)
&& idsDokterUmumIGD.contains(Integer.parseInt(next.get("idProduk").toString()))) { && idsDokterUmumIGD.contains(Integer.parseInt(next.get("idProduk").toString()))) {
@ -1275,8 +1322,10 @@ public class PelayananPasienServiceImpl extends BaseVoServiceImpl implements Pel
*/ */
listPelayananRemun.add(next); listPelayananRemun.add(next);
capaianRemun += Double.parseDouble(next.get("hargaJasa").toString()); capaianRemun += Double.parseDouble(next.get("hargaJasa").toString());
} else if (!listDetailJenisProduk } else if ((CommonUtil.isNullOrEmpty(next.get("idDetailJenisProduk"))
.contains(Integer.parseInt(next.get("idDetailJenisProduk").toString())) || (CommonUtil.isNotNullOrEmpty(next.get("idDetailJenisProduk"))
&& !listDetailJenisProduk.contains(
Integer.parseInt(next.get("idDetailJenisProduk").toString()))))
&& drKkPerinatologiList.contains(idPegawai) && drKkPerinatologiList.contains(idPegawai)
&& idsDokterPerinatologi.contains(Integer.parseInt(next.get("idProduk").toString()))) { && idsDokterPerinatologi.contains(Integer.parseInt(next.get("idProduk").toString()))) {
/* /*
@ -1300,23 +1349,26 @@ public class PelayananPasienServiceImpl extends BaseVoServiceImpl implements Pel
capaianRemun += Double.parseDouble(next.get("hargaJasa").toString()); capaianRemun += Double.parseDouble(next.get("hargaJasa").toString());
} }
} else if (CommonUtil.isNotNullOrEmpty(listDetailJenisProdukException) } else if (CommonUtil.isNotNullOrEmpty(listDetailJenisProdukException)
&& CommonUtil.isNotNullOrEmpty(next.get("idDetailJenisProduk"))
&& listDetailJenisProdukException && listDetailJenisProdukException
.contains(Integer.parseInt(next.get("idDetailJenisProduk").toString()))) { .contains(Integer.parseInt(next.get("idDetailJenisProduk").toString()))) {
/* /*
* Diluar pembatasan jenis produk * Diluar pembatasan jenis produk
*/ */
if (idsRegDJPPenunjangPA if (CommonUtil.isNotNullOrEmpty(next.get("idDetailJenisProduk")) && (idsRegDJPPenunjangPA
.contains(Integer.parseInt(next.get("idDetailJenisProduk").toString())) .contains(Integer.parseInt(next.get("idDetailJenisProduk").toString()))
|| idsRegDJPPenunjangPK || idsRegDJPPenunjangPK
.contains(Integer.parseInt(next.get("idDetailJenisProduk").toString()))) { .contains(Integer.parseInt(next.get("idDetailJenisProduk").toString())))) {
/* /*
* Pengecualian daftar tindakan penunjang yang * Pengecualian daftar tindakan penunjang yang
* bebas klaim * bebas klaim
*/ */
listPelayananRemun.add(next); listPelayananRemun.add(next);
capaianRemun += Double.parseDouble(next.get("hargaJasa").toString()); capaianRemun += Double.parseDouble(next.get("hargaJasa").toString());
} else if (!Arrays.asList(Master.JenisProduk.NONLOGBOOK) } else if (CommonUtil.isNullOrEmpty(next.get("idJenisProduk"))
.contains(Integer.parseInt(next.get("idJenisProduk").toString()))) { || (CommonUtil.isNotNullOrEmpty(next.get("idJenisProduk"))
&& !Arrays.asList(Master.JenisProduk.NONLOGBOOK).contains(
Integer.parseInt(next.get("idJenisProduk").toString())))) {
listPelayananRemun.add(next); listPelayananRemun.add(next);
capaianRemun += Double.parseDouble(next.get("hargaJasa").toString()); capaianRemun += Double.parseDouble(next.get("hargaJasa").toString());
} }
@ -1335,11 +1387,14 @@ public class PelayananPasienServiceImpl extends BaseVoServiceImpl implements Pel
* Dibatasi oleh daftar tindakan tertentu * Dibatasi oleh daftar tindakan tertentu
*/ */
listPelayananFfs.add(next); listPelayananFfs.add(next);
} else if ((Arrays.asList(Master.Departemen.GRUP_RAWAT_JALAN_UTAMA) } else if ((CommonUtil.isNotNullOrEmpty(next.get("idDepartemen"))
.contains(Integer.parseInt(next.get("idDepartemen").toString())) && Arrays.asList(Master.Departemen.GRUP_RAWAT_JALAN_UTAMA)
|| Master.GolonganProduk.VISIT.equals(next.get("idGolonganProduk"))) .contains(Integer.parseInt(next.get("idDepartemen").toString())))
&& !Arrays.asList(Master.JenisProduk.NONLOGBOOK) || Master.GolonganProduk.VISIT.equals(next.get("idGolonganProduk")) && (CommonUtil
.contains(Integer.parseInt(next.get("idJenisProduk").toString()))) { .isNullOrEmpty(next.get("idJenisProduk"))
|| (CommonUtil.isNotNullOrEmpty(next.get("idJenisProduk"))
&& !Arrays.asList(Master.JenisProduk.NONLOGBOOK).contains(
Integer.parseInt(next.get("idJenisProduk").toString()))))) {
/* /*
* Dibatasi hanya di rawat jalan atau visite saja * Dibatasi hanya di rawat jalan atau visite saja
*/ */
@ -1349,26 +1404,30 @@ public class PelayananPasienServiceImpl extends BaseVoServiceImpl implements Pel
/* /*
* Selain dokter-dokter kk pediatrik gawat darurat * Selain dokter-dokter kk pediatrik gawat darurat
*/ */
if (listDetailJenisProduk if (CommonUtil.isNotNullOrEmpty(next.get("idDetailJenisProduk")) && listDetailJenisProduk
.contains(Integer.parseInt(next.get("idDetailJenisProduk").toString()))) { .contains(Integer.parseInt(next.get("idDetailJenisProduk").toString()))) {
/* /*
* Dibatasi oleh daftar jenis tindakan tertentu * Dibatasi oleh daftar jenis tindakan tertentu
*/ */
if (idsRegDJPPenunjangPA if (CommonUtil.isNotNullOrEmpty(next.get("idDetailJenisProduk")) && (idsRegDJPPenunjangPA
.contains(Integer.parseInt(next.get("idDetailJenisProduk").toString())) .contains(Integer.parseInt(next.get("idDetailJenisProduk").toString()))
|| idsRegDJPPenunjangPK || idsRegDJPPenunjangPK
.contains(Integer.parseInt(next.get("idDetailJenisProduk").toString()))) { .contains(Integer.parseInt(next.get("idDetailJenisProduk").toString())))) {
/* /*
* Pengecualian daftar tindakan penunjang yang * Pengecualian daftar tindakan penunjang yang
* bebas klaim * bebas klaim
*/ */
listPelayananFfs.add(next); listPelayananFfs.add(next);
} else if (!Arrays.asList(Master.JenisProduk.NONLOGBOOK) } else if (CommonUtil.isNullOrEmpty(next.get("idJenisProduk"))
.contains(Integer.parseInt(next.get("idJenisProduk").toString()))) { || (CommonUtil.isNotNullOrEmpty(next.get("idJenisProduk"))
&& !Arrays.asList(Master.JenisProduk.NONLOGBOOK).contains(
Integer.parseInt(next.get("idJenisProduk").toString())))) {
listPelayananFfs.add(next); listPelayananFfs.add(next);
} }
} else if (!listDetailJenisProduk } else if ((CommonUtil.isNullOrEmpty(next.get("idDetailJenisProduk"))
.contains(Integer.parseInt(next.get("idDetailJenisProduk").toString())) || (CommonUtil.isNotNullOrEmpty(next.get("idDetailJenisProduk"))
&& !listDetailJenisProduk.contains(
Integer.parseInt(next.get("idDetailJenisProduk").toString()))))
&& Master.Departemen.IGD.equals(next.get("idDepartemen")) && Master.Departemen.IGD.equals(next.get("idDepartemen"))
&& drKsmUmumList.contains(idPegawai) && drKsmUmumList.contains(idPegawai)
&& idsDokterUmumIGD.contains(Integer.parseInt(next.get("idProduk").toString()))) { && idsDokterUmumIGD.contains(Integer.parseInt(next.get("idProduk").toString()))) {
@ -1376,8 +1435,10 @@ public class PelayananPasienServiceImpl extends BaseVoServiceImpl implements Pel
* Aturan dokter ksm umum di igd * Aturan dokter ksm umum di igd
*/ */
listPelayananFfs.add(next); listPelayananFfs.add(next);
} else if (!listDetailJenisProduk } else if ((CommonUtil.isNullOrEmpty(next.get("idDetailJenisProduk"))
.contains(Integer.parseInt(next.get("idDetailJenisProduk").toString())) || (CommonUtil.isNotNullOrEmpty(next.get("idDetailJenisProduk"))
&& !listDetailJenisProduk.contains(
Integer.parseInt(next.get("idDetailJenisProduk").toString()))))
&& drKkPerinatologiList.contains(idPegawai) && drKkPerinatologiList.contains(idPegawai)
&& idsDokterPerinatologi.contains(Integer.parseInt(next.get("idProduk").toString()))) { && idsDokterPerinatologi.contains(Integer.parseInt(next.get("idProduk").toString()))) {
/* /*
@ -1400,22 +1461,25 @@ public class PelayananPasienServiceImpl extends BaseVoServiceImpl implements Pel
capaianRemun += Double.parseDouble(next.get("hargaJasa").toString()); capaianRemun += Double.parseDouble(next.get("hargaJasa").toString());
} }
} else if (CommonUtil.isNotNullOrEmpty(listDetailJenisProdukException) } else if (CommonUtil.isNotNullOrEmpty(listDetailJenisProdukException)
&& CommonUtil.isNotNullOrEmpty(next.get("idDetailJenisProduk"))
&& listDetailJenisProdukException && listDetailJenisProdukException
.contains(Integer.parseInt(next.get("idDetailJenisProduk").toString()))) { .contains(Integer.parseInt(next.get("idDetailJenisProduk").toString()))) {
/* /*
* Diluar pembatasan jenis produk * Diluar pembatasan jenis produk
*/ */
if (idsRegDJPPenunjangPA if (CommonUtil.isNotNullOrEmpty(next.get("idDetailJenisProduk")) && (idsRegDJPPenunjangPA
.contains(Integer.parseInt(next.get("idDetailJenisProduk").toString())) .contains(Integer.parseInt(next.get("idDetailJenisProduk").toString()))
|| idsRegDJPPenunjangPK || idsRegDJPPenunjangPK
.contains(Integer.parseInt(next.get("idDetailJenisProduk").toString()))) { .contains(Integer.parseInt(next.get("idDetailJenisProduk").toString())))) {
/* /*
* Pengecualian daftar tindakan penunjang yang * Pengecualian daftar tindakan penunjang yang
* bebas klaim * bebas klaim
*/ */
listPelayananFfs.add(next); listPelayananFfs.add(next);
} else if (!Arrays.asList(Master.JenisProduk.NONLOGBOOK) } else if (CommonUtil.isNullOrEmpty(next.get("idJenisProduk"))
.contains(Integer.parseInt(next.get("idJenisProduk").toString()))) { || (CommonUtil.isNotNullOrEmpty(next.get("idJenisProduk"))
&& !Arrays.asList(Master.JenisProduk.NONLOGBOOK).contains(
Integer.parseInt(next.get("idJenisProduk").toString())))) {
listPelayananFfs.add(next); listPelayananFfs.add(next);
} }
} }
@ -1507,6 +1571,7 @@ public class PelayananPasienServiceImpl extends BaseVoServiceImpl implements Pel
d.put("hargaJasa", d.put("hargaJasa",
persenRemunDokterUmumHD / 100 * Double.parseDouble(d.get("hargaJual").toString())); persenRemunDokterUmumHD / 100 * Double.parseDouble(d.get("hargaJual").toString()));
} else if (Master.Departemen.BEDAH_SENTRAL.equals(d.get("idDepartemen")) } else if (Master.Departemen.BEDAH_SENTRAL.equals(d.get("idDepartemen"))
&& CommonUtil.isNotNullOrEmpty(d.get("idKelompokPasien"))
&& Arrays.asList(Master.KelompokPasien.KELOMPOK_BPJS) && Arrays.asList(Master.KelompokPasien.KELOMPOK_BPJS)
.contains(Integer.parseInt(d.get("idKelompokPasien").toString())) .contains(Integer.parseInt(d.get("idKelompokPasien").toString()))
&& Master.JenisPetugasPelaksana.DOKTER_PEMERIKSA.equals(d.get("idJenisPelaksana"))) { && Master.JenisPetugasPelaksana.DOKTER_PEMERIKSA.equals(d.get("idJenisPelaksana"))) {
@ -1515,6 +1580,7 @@ public class PelayananPasienServiceImpl extends BaseVoServiceImpl implements Pel
if (Double.parseDouble(d.get("hargaJasa").toString()) != 0.0) if (Double.parseDouble(d.get("hargaJasa").toString()) != 0.0)
d.put("hargaJasa", persenJasa * persenTarifIBS * Double.parseDouble(d.get("hargaJual").toString())); d.put("hargaJasa", persenJasa * persenTarifIBS * Double.parseDouble(d.get("hargaJual").toString()));
} else if (Master.Departemen.BEDAH_SENTRAL.equals(d.get("idDepartemen")) } else if (Master.Departemen.BEDAH_SENTRAL.equals(d.get("idDepartemen"))
&& CommonUtil.isNotNullOrEmpty(d.get("idKelompokPasien"))
&& Arrays.asList(Master.KelompokPasien.KELOMPOK_BPJS) && Arrays.asList(Master.KelompokPasien.KELOMPOK_BPJS)
.contains(Integer.parseInt(d.get("idKelompokPasien").toString())) .contains(Integer.parseInt(d.get("idKelompokPasien").toString()))
&& Master.JenisPetugasPelaksana.ASISTEN_SPESIALIS.equals(d.get("idJenisPelaksana"))) { && Master.JenisPetugasPelaksana.ASISTEN_SPESIALIS.equals(d.get("idJenisPelaksana"))) {
@ -1523,6 +1589,7 @@ public class PelayananPasienServiceImpl extends BaseVoServiceImpl implements Pel
if (Double.parseDouble(d.get("hargaJasa").toString()) != 0.0) if (Double.parseDouble(d.get("hargaJasa").toString()) != 0.0)
d.put("hargaJasa", persenJasa * persenTarifIBS * Double.parseDouble(d.get("hargaJual").toString())); d.put("hargaJasa", persenJasa * persenTarifIBS * Double.parseDouble(d.get("hargaJual").toString()));
} else if (Master.Departemen.BEDAH_SENTRAL.equals(d.get("idDepartemen")) } else if (Master.Departemen.BEDAH_SENTRAL.equals(d.get("idDepartemen"))
&& CommonUtil.isNotNullOrEmpty(d.get("idKelompokPasien"))
&& Arrays.asList(Master.KelompokPasien.KELOMPOK_BPJS) && Arrays.asList(Master.KelompokPasien.KELOMPOK_BPJS)
.contains(Integer.parseInt(d.get("idKelompokPasien").toString())) .contains(Integer.parseInt(d.get("idKelompokPasien").toString()))
&& Master.JenisPetugasPelaksana.DOKTER_ANASTESI.equals(d.get("idJenisPelaksana"))) { && Master.JenisPetugasPelaksana.DOKTER_ANASTESI.equals(d.get("idJenisPelaksana"))) {
@ -1569,7 +1636,7 @@ public class PelayananPasienServiceImpl extends BaseVoServiceImpl implements Pel
d.put("persenJasa", persenLaboratorium + "%"); d.put("persenJasa", persenLaboratorium + "%");
if (Double.parseDouble(d.get("hargaJasa").toString()) != 0.0) if (Double.parseDouble(d.get("hargaJasa").toString()) != 0.0)
d.put("hargaJasa", persenLaboratorium / 100 * Double.parseDouble(d.get("hargaJual").toString())); d.put("hargaJasa", persenLaboratorium / 100 * Double.parseDouble(d.get("hargaJual").toString()));
} else if (Arrays.asList(Master.Ruangan.ICU_NICU) } else if (CommonUtil.isNotNullOrEmpty(d.get("idRuangan")) && Arrays.asList(Master.Ruangan.ICU_NICU)
.contains(Integer.parseInt(d.get("idRuangan").toString()))) { .contains(Integer.parseInt(d.get("idRuangan").toString()))) {
double persenJasa = persenTindakan / 100; double persenJasa = persenTindakan / 100;
d.put("persenJasa", persenTarifJasaICU + "% + " + persenTindakan + "%"); d.put("persenJasa", persenTarifJasaICU + "% + " + persenTindakan + "%");
@ -1725,8 +1792,9 @@ public class PelayananPasienServiceImpl extends BaseVoServiceImpl implements Pel
* Mapping persentase jasa remunerasi * Mapping persentase jasa remunerasi
*/ */
for (Map<String, Object> d : listData) { for (Map<String, Object> d : listData) {
if (Arrays.asList(Master.KelompokPasien.KELOMPOK_BPJS) if (CommonUtil.isNotNullOrEmpty(d.get("idKelompokPasien"))
.contains(Integer.parseInt(d.get("idKelompokPasien").toString()))) { && Arrays.asList(Master.KelompokPasien.KELOMPOK_BPJS)
.contains(Integer.parseInt(d.get("idKelompokPasien").toString()))) {
/* /*
* Set persen jasa dokter luar yang klaim ffs dengan persen jasa * Set persen jasa dokter luar yang klaim ffs dengan persen jasa
* dari tarif total * dari tarif total
@ -1794,8 +1862,10 @@ public class PelayananPasienServiceImpl extends BaseVoServiceImpl implements Pel
*/ */
List<Map<String, Object>> listEpisode = new ArrayList<>(); List<Map<String, Object>> listEpisode = new ArrayList<>();
for (Map<String, Object> d : listData) { for (Map<String, Object> d : listData) {
if (!Arrays.asList(Master.KelompokPasien.KELOMPOK_BPJS) if ((CommonUtil.isNullOrEmpty(d.get("idKelompokPasien"))
.contains(Integer.parseInt(d.get("idKelompokPasien").toString())) || (CommonUtil.isNotNullOrEmpty(d.get("idKelompokPasien"))
&& !Arrays.asList(Master.KelompokPasien.KELOMPOK_BPJS)
.contains(Integer.parseInt(d.get("idKelompokPasien").toString()))))
&& Master.Departemen.BEDAH_SENTRAL.equals(d.get("idDepartemen"))) { && Master.Departemen.BEDAH_SENTRAL.equals(d.get("idDepartemen"))) {
boolean existEpisode = false; boolean existEpisode = false;
for (Map<String, Object> e : listEpisode) for (Map<String, Object> e : listEpisode)
@ -1817,8 +1887,10 @@ public class PelayananPasienServiceImpl extends BaseVoServiceImpl implements Pel
*/ */
for (Map<String, Object> d : listData) { for (Map<String, Object> d : listData) {
for (Map<String, Object> e : listEpisode) { for (Map<String, Object> e : listEpisode) {
if (!Arrays.asList(Master.KelompokPasien.KELOMPOK_BPJS) if ((CommonUtil.isNullOrEmpty(d.get("idKelompokPasien"))
.contains(Integer.parseInt(d.get("idKelompokPasien").toString())) || (CommonUtil.isNotNullOrEmpty(d.get("idKelompokPasien"))
&& !Arrays.asList(Master.KelompokPasien.KELOMPOK_BPJS)
.contains(Integer.parseInt(d.get("idKelompokPasien").toString()))))
&& Master.Departemen.BEDAH_SENTRAL.equals(d.get("idDepartemen")) && Master.Departemen.BEDAH_SENTRAL.equals(d.get("idDepartemen"))
&& d.get("idPasienDaftar").toString().equals(e.get("id")) && d.get("idPasienDaftar").toString().equals(e.get("id"))
&& Integer.valueOf(d.get("idProduk").toString()).equals(e.get("idProduk"))) { && Integer.valueOf(d.get("idProduk").toString()).equals(e.get("idProduk"))) {