From ed2ea0262531fd8b0c6bdc37150a7398ae92bbf9 Mon Sep 17 00:00:00 2001 From: Salman Manoe Date: Thu, 2 Nov 2023 08:59:28 +0700 Subject: [PATCH] Update service pelayanan pasien Penerapan filter status batal paket untuk logbook fixed-pay dokter --- .../medifirst2000/dao/PelayananPasienDao.java | 2 +- .../service/impl/PelayananPasienServiceImpl.java | 12 +++++++++--- 2 files changed, 10 insertions(+), 4 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 a5fda3a6..35a76295 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 @@ -286,7 +286,7 @@ public interface PelayananPasienDao extends JpaRepository findByPasienDaftarPasienDaftarNoRecIn(List idDaftarList); - @Query("select distinct new Map(vp.pasienId as pasienId," + "vp.paketId as paketId," + @Query("select distinct new Map(vp.pasienId as pasienId," + "vp.paketId as paketId," + "vp.isBatal as isBatal," + "apd.tglKeluar as tglKeluar) " + "from PelayananPasienPetugas ppp, " + "Ruangan ru, " + "VoucherPaket vp " + "inner join ppp.pelayananPasien pp " + "inner join pp.pasienDaftar apd " + "inner join apd.pasienDaftar pd " + "where apd.ruanganId = ru.id " + "and pd.pasienId = vp.pasienId " diff --git a/jasamedika-business/src/main/java/com/jasamedika/medifirst2000/service/impl/PelayananPasienServiceImpl.java b/jasamedika-business/src/main/java/com/jasamedika/medifirst2000/service/impl/PelayananPasienServiceImpl.java index 17fb1985..befb24b0 100644 --- a/jasamedika-business/src/main/java/com/jasamedika/medifirst2000/service/impl/PelayananPasienServiceImpl.java +++ b/jasamedika-business/src/main/java/com/jasamedika/medifirst2000/service/impl/PelayananPasienServiceImpl.java @@ -1652,8 +1652,13 @@ public class PelayananPasienServiceImpl extends BaseVoServiceImpl implements Pel d.put("tglPulangIbu", null); d.put("bulanPulangIbu", ""); d.put("hargaJasa", 0.0); - first.ifPresent(stringObjectMap -> d.put("bulanPulangIbu", month.format(stringObjectMap.get("tglKeluar")))); - if (first.isPresent() && drKsmObgyn.contains(idPegawai) && !PERAWAT.name().equals(d.get("paketType"))) { + d.put("isBatalPaket", false); + first.ifPresent(f -> { + d.put("bulanPulangIbu", month.format(f.get("tglKeluar"))); + d.put("isBatalPaket", f.get("isBatal")); + }); + if (first.isPresent() && drKsmObgyn.contains(idPegawai) && !PERAWAT.name().equals(d.get("paketType")) + && !Boolean.parseBoolean(d.get("isBatalPaket").toString())) { d.put("tglPulangIbu", first.get().get("tglKeluar")); if ((tglAwal.equals(first.get().get("tglKeluar")) || ((Date) first.get().get("tglKeluar")).after(tglAwal)) @@ -1698,7 +1703,8 @@ public class PelayananPasienServiceImpl extends BaseVoServiceImpl implements Pel : byDetailTarifNonKelas.get().getHargaSatuan())); } } - } else if (!drKsmObgyn.contains(idPegawai) && !PERAWAT.name().equals(d.get("paketType"))) { + } else if (!drKsmObgyn.contains(idPegawai) && !PERAWAT.name().equals(d.get("paketType")) + && !Boolean.parseBoolean(d.get("isBatalPaket").toString())) { if (DOKTER_PEMERIKSA.equals(d.get("idJenisPelaksana"))) { Optional byDetailTarif = tarifDetailReguler.stream() .filter(dt -> dt.getProdukId().equals(d.get("idProduk")))