Update service remunerasi

Penyesuaian logbook terapis sebagai dokter pemeriksa akan mengambil komponen harga jasa paramedis
This commit is contained in:
Salman Manoe 2025-01-24 16:06:34 +07:00
parent 518e26cc80
commit 42dc402040
2 changed files with 13 additions and 0 deletions

View File

@ -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;

View File

@ -1604,6 +1604,7 @@ public class RemunerasiServiceImpl extends BaseVoServiceImpl implements Remunera
private List<Map<String, Object>> transformPelayananPaket(Integer idPegawai, List<Map<String, Object>> listData) {
List<Integer> drKsmObgyn = pegawaiDao.getDokterByKsm(KSM_OBGYN);
List<Integer> terapisRehabMedik = mapJabatanProfesiDao.findIdPegawaiByProfesiIn(Arrays.asList(TERAPI));
SimpleDateFormat month = new SimpleDateFormat("MMM-yyyy", new Locale("in", "ID"));
List<MapProdukPaket> paketList = mapProdukPaketDao.findAll();
List<Integer> 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<HargaNettoProdukByKelasD> 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<HargaNettoProdukByKelasD> byDetailTarifNonKelas = tarifDetailNonKelas.stream()