Merge branch 'dev/remun/proporsi-dokter' into dev/no-cron

This commit is contained in:
Salman Manoe 2024-03-18 17:41:12 +07:00
commit 3e71c9be66

View File

@ -595,6 +595,7 @@ public class PelayananPasienServiceImpl extends BaseVoServiceImpl implements Pel
* Mapping set awal persentase jasa remunerasi dan harga jasa remunerasi
*/
for (Map<String, Object> d : listRatedPay) {
d.put("isTermasukProporsi", true);
double hargaJual = Double.parseDouble(d.get("hargaJual").toString());
if (Boolean.parseBoolean(d.get("isSelisihPaket").toString()))
hargaJual -= Double.parseDouble(d.get("hargaDiskon").toString());
@ -665,17 +666,21 @@ public class PelayananPasienServiceImpl extends BaseVoServiceImpl implements Pel
RemunHargaJasa hargaJasa = hargaJasa(persenAnestesi / 100, hargaJual, d, false);
d.put("hargaJasa", hargaJasa.getNilai());
} else if (RADIOLOGI.equals(d.get("idDepartemen"))) {
RemunHargaJasa hargaJasa = hargaJasa(persenRadiologi / 100, hargaJual, d, false);
d.put("hargaJasa", hargaJasa.getNilai());
d.put("hargaJasa", persenRadiologi / 100 * hargaJual);
if (!DOKTER_PEMERIKSA.equals(d.get("idJenisPelaksana")))
d.put("isTermasukProporsi", false);
} else if (REHAB_MEDIK.equals(d.get("idDepartemen"))) {
RemunHargaJasa hargaJasa = hargaJasa(persenRehabMedik / 100, hargaJual, d, false);
d.put("hargaJasa", hargaJasa.getNilai());
d.put("hargaJasa", persenRehabMedik / 100 * hargaJual);
if (!DOKTER_PEMERIKSA.equals(d.get("idJenisPelaksana")))
d.put("isTermasukProporsi", false);
} else if (KONSULTASI.equals(d.get("idGolonganProduk"))) {
RemunHargaJasa hargaJasa = hargaJasa(persenKonsultasi / 100, hargaJual, d, false);
d.put("hargaJasa", hargaJasa.getNilai());
d.put("hargaJasa", persenKonsultasi / 100 * hargaJual);
if (!DOKTER_PEMERIKSA.equals(d.get("idJenisPelaksana")))
d.put("isTermasukProporsi", false);
} else if (VISIT.equals(d.get("idGolonganProduk"))) {
RemunHargaJasa hargaJasa = hargaJasa(persenVisite / 100, hargaJual, d, false);
d.put("hargaJasa", hargaJasa.getNilai());
d.put("hargaJasa", persenVisite / 100 * hargaJual);
if (!DOKTER_PEMERIKSA.equals(d.get("idJenisPelaksana")))
d.put("isTermasukProporsi", false);
} else if (drAnastesiList.contains(idPegawai) && DOKTER_PEMERIKSA.equals(d.get("idJenisPelaksana"))) {
RemunHargaJasa hargaJasa = hargaJasa(persenTindakan / 100, hargaJual, d, false);
d.put("hargaJasa", hargaJasa.getNilai());
@ -689,16 +694,21 @@ public class PelayananPasienServiceImpl extends BaseVoServiceImpl implements Pel
* A rule for claimed <= Jul 31th 2023
*/
RemunHargaJasa hargaJasa = hargaJasa(persenRemunLabGenetika / 100, hargaJual, d, false);
d.put("hargaJasa", hargaJasa.getNilai());
d.put("hargaJasa", persenRemunLabGenetika / 100 * hargaJual);
if (!DOKTER_PEMERIKSA.equals(d.get("idJenisPelaksana")))
d.put("isTermasukProporsi", false);
} else if (Arrays.asList(GENETIKA).contains(Integer.parseInt(d.get("idRuangan").toString()))) {
RemunHargaJasa hargaJasa = hargaJasa(persenRemunLabGenetika / 100, hargaJual, d, false);
d.put("hargaJasa", hargaJasa.getNilai());
d.put("hargaJasa", persenRemunLabGenetika / 100 * hargaJual);
if (!DOKTER_PEMERIKSA.equals(d.get("idJenisPelaksana")))
d.put("isTermasukProporsi", false);
} else if (drKkPatologiAnatomiList.contains(idPegawai)) {
RemunHargaJasa hargaJasa = hargaJasa(persenRemunDokterPA / 100, hargaJual, d, false);
d.put("hargaJasa", hargaJasa.getNilai());
d.put("hargaJasa", persenRemunDokterPA / 100 * hargaJual);
if (!DOKTER_PEMERIKSA.equals(d.get("idJenisPelaksana")))
d.put("isTermasukProporsi", false);
} else if (LABORATORIUM.equals(d.get("idDepartemen"))) {
RemunHargaJasa hargaJasa = hargaJasa(persenLaboratorium / 100, hargaJual, d, false);
d.put("hargaJasa", hargaJasa.getNilai());
d.put("hargaJasa", persenLaboratorium / 100 * hargaJual);
if (!DOKTER_PEMERIKSA.equals(d.get("idJenisPelaksana")))
d.put("isTermasukProporsi", false);
} else if (CommonUtil.isNotNullOrEmpty(d.get("idRuangan"))
&& Arrays.asList(ICU_NICU).contains(Integer.parseInt(d.get("idRuangan").toString()))) {
double persenJasa = persenTindakan / 100;
@ -709,6 +719,11 @@ public class PelayananPasienServiceImpl extends BaseVoServiceImpl implements Pel
d.put("hargaJasa", hargaJasa.getNilai());
}
}
/*
* Filtered by proporsi jasa layanan
*/
listRatedPay = listRatedPay.stream().filter(d -> Boolean.parseBoolean(d.get("isTermasukProporsi").toString()))
.collect(Collectors.toList());
/*
* Inisialisasi collect logbook klaim MPP
*/