diff --git a/jasamedika-business/src/main/java/com/jasamedika/medifirst2000/constants/Master.java b/jasamedika-business/src/main/java/com/jasamedika/medifirst2000/constants/Master.java index 9f661fd5..f4cbbdc1 100644 --- a/jasamedika-business/src/main/java/com/jasamedika/medifirst2000/constants/Master.java +++ b/jasamedika-business/src/main/java/com/jasamedika/medifirst2000/constants/Master.java @@ -241,6 +241,7 @@ public final class Master { public static final Integer[] JASA_MEDIS = { 21, 22, 35 }; public static final Integer[] JASA_PARAMEDIS = { 25, 26, 27 }; public static final Integer[] JASA_SARANA = { 6, 38 }; + public static final Integer JASA_TERAPIS = 25; public static final Integer SPOG_ASISTEN = 206; public static final Integer SPOG_OPERATOR = 201; public static final Integer TOTAL_TARIF = 210; 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 72de145f..7a162ad8 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 @@ -1604,6 +1604,7 @@ public class RemunerasiServiceImpl extends BaseVoServiceImpl implements Remunera private List> transformPelayananPaket(Integer idPegawai, List> listData) { List drKsmObgyn = pegawaiDao.getDokterByKsm(KSM_OBGYN); + List terapisRehabMedik = mapJabatanProfesiDao.findIdPegawaiByProfesiIn(Arrays.asList(TERAPI)); SimpleDateFormat month = new SimpleDateFormat("MMM-yyyy", new Locale("in", "ID")); List paketList = mapProdukPaketDao.findAll(); List allProdukEntriId = paketList.stream().map(MapProdukPaket::getProdukEntriId) @@ -1774,6 +1775,17 @@ public class RemunerasiServiceImpl extends BaseVoServiceImpl implements Remunera : byDetailTarifNonKelas.get().getHargaSatuan())); } } + } else if (terapisRehabMedik.contains(idPegawai) + && !Arrays.asList(GRUP_RAWAT_INAP).contains(Integer.parseInt(d.get("idDepartemen").toString())) + && DOKTER_PEMERIKSA.equals(d.get("idJenisPelaksana"))) { + Optional byDetailTarifNonKelas = tarifDetailNonKelas.stream() + .filter(dt -> dt.getProdukId().equals(d.get("idProduk"))) + .filter(dt -> dt.getKelasId().equals(d.get("idKelas"))) + .filter(dt -> dt.getKomponenHargaId().equals(JASA_TERAPIS)).findFirst(); + byDetailTarifNonKelas.ifPresent(hargaNettoProdukByKelasD -> d.put("hargaJasa", + CommonUtil.isNotNullOrEmpty(byDetailTarifNonKelas.get().getHargaNetto1()) + ? byDetailTarifNonKelas.get().getHargaNetto1() + : byDetailTarifNonKelas.get().getHargaSatuan())); } else if (!Arrays.asList(GRUP_RAWAT_INAP).contains(Integer.parseInt(d.get("idDepartemen").toString())) && DOKTER_PEMERIKSA.equals(d.get("idJenisPelaksana"))) { Optional byDetailTarifNonKelas = tarifDetailNonKelas.stream()