Update service pelayanan pasien

Penerapan filter status batal paket untuk logbook fixed-pay dokter
This commit is contained in:
Salman Manoe 2023-11-02 08:59:28 +07:00
parent 9fa265a89f
commit ed2ea02625
2 changed files with 10 additions and 4 deletions

View File

@ -286,7 +286,7 @@ public interface PelayananPasienDao extends JpaRepository<PelayananPasien, Strin
List<PelayananPasien> findByPasienDaftarPasienDaftarNoRecIn(List<String> 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 "

View File

@ -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<HargaNettoProdukByKelasD> byDetailTarif = tarifDetailReguler.stream()
.filter(dt -> dt.getProdukId().equals(d.get("idProduk")))