Update service pelayanan pasien

Perbaikan bug hibernate tidak dapat melakukan deserialisasi tampilan daftar diskon paket
This commit is contained in:
Salman Manoe 2023-09-26 09:53:48 +07:00
parent ae58deec31
commit ebd7cc4193
4 changed files with 42 additions and 34 deletions

View File

@ -49,8 +49,10 @@ public interface PelayananPasienPetugasDao extends PagingAndSortingRepository<Pe
@Query("select ppp from PelayananPasienPetugas ppp left join ppp.pelayananPasien pp where pp.noRec = :noRec")
List<PelayananPasienPetugas> findByPelayananPasien(@Param("noRec") String noRec);
@Query("select ppp from PelayananPasienPetugas ppp " + "left join ppp.pelayananPasien pp "
@Query("select new Map(ppp.pelayananPasienId as noRecLayanan, " + "ppp.ObjectJenisPetugasPeId as idJenisPelaksana, "
+ "ppp.ObjectPegawaiId as idPegawai, pg.namaLengkap as namaPegawai) " + "from PelayananPasienPetugas ppp "
+ "left join ppp.pelayananPasien pp " + "left join ppp.kdpegawai pg "
+ "where pp.noRec in (:listNoRecPelayanan)")
List<PelayananPasienPetugas> findAllByPelayananPasienNoRecIn(
List<Map<String, Object>> findAllByPelayananPasienNoRecIn(
@Param("listNoRecPelayanan") List<String> listNoRecPelayanan);
}

View File

@ -1666,14 +1666,13 @@ public class PelayananPasienServiceImpl extends BaseVoServiceImpl implements Pel
Optional<HargaNettoProdukByKelas> first = listTarif.stream().filter(
t -> t.getProdukId().equals(l.get("idProduk")) && t.getKelasId().equals(l.get("idKelas")))
.findFirst();
if (first.isPresent())
if (CommonUtil.isNotNullOrEmpty(first.get().getHargaNetto1())
&& first.get().getHargaNetto1() > 0.0) {
l.put("hargaJual", first.get().getHargaNetto1());
} else if (CommonUtil.isNotNullOrEmpty(first.get().getHargaSatuan())
&& first.get().getHargaSatuan() > 0.0) {
l.put("hargaJual", first.get().getHargaSatuan());
}
if (first.isPresent() && CommonUtil.isNotNullOrEmpty(first.get().getHargaNetto1())
&& first.get().getHargaNetto1() > 0.0) {
l.put("hargaJual", first.get().getHargaNetto1());
} else if (first.isPresent() && CommonUtil.isNotNullOrEmpty(first.get().getHargaSatuan())
&& first.get().getHargaSatuan() > 0.0) {
l.put("hargaJual", first.get().getHargaSatuan());
}
});
List<HargaNettoProdukByKelasD> listDetailTarif = hargaNettoProdukByKelasDDao
.findByConcateProdukKelas(concatIdProdukKelas);
@ -2725,7 +2724,7 @@ public class PelayananPasienServiceImpl extends BaseVoServiceImpl implements Pel
TagihanPendaftaranDto.TagihanPendaftaranDtoBuilder dtoBuilder = TagihanPendaftaranDto.builder();
List<Map<String, Object>> tagihan = pelayananPasienDao.findPelayananPasienByTagihanPendaftaran(noRegistrasi);
List<String> noRec = tagihan.stream().map(t -> t.get("noRec").toString()).collect(Collectors.toList());
List<PelayananPasienPetugas> listPetugas = pelayananPasienPetugasDao.findAllByPelayananPasienNoRecIn(noRec);
List<Map<String, Object>> listPetugas = pelayananPasienPetugasDao.findAllByPelayananPasienNoRecIn(noRec);
tagihan.forEach(t -> {
dtoBuilder.noRec(t.get("noRec").toString()).idRuangan(Integer.parseInt(t.get("idRuangan").toString()))
.namaRuangan(t.get("namaRuangan").toString()).tglPelayanan((Date) t.get("tglPelayanan"))
@ -2737,12 +2736,18 @@ public class PelayananPasienServiceImpl extends BaseVoServiceImpl implements Pel
.hargaDiskon(Double.parseDouble(t.get("hargaDiskon").toString()))
.hargaJasa(Double.parseDouble(t.get("hargaJasa").toString()))
.isPaket(Boolean.parseBoolean(t.get("isPaket").toString()));
Optional<PelayananPasienPetugas> dpjp = listPetugas.stream()
.filter(p -> p.getPelayananPasienId().equals(t.get("noRec").toString())
&& DOKTER_PEMERIKSA.equals(p.getObjectJenisPetugasPeId()))
Optional<Map<String, Object>> petugas = listPetugas.stream()
.filter(p -> CommonUtil.isNotNullOrEmpty(p.get("noRecLayanan"))
&& t.get("noRec").toString().equals(p.get("noRecLayanan"))
&& CommonUtil.isNotNullOrEmpty(p.get("idJenisPelaksana"))
&& DOKTER_PEMERIKSA.equals(p.get("idJenisPelaksana")))
.findFirst();
dpjp.ifPresent(pelayananPasienPetugas -> dtoBuilder.idPegawai(pelayananPasienPetugas.getObjectPegawaiId())
.namaPegawai(pelayananPasienPetugas.getKdpegawai().getNamaLengkap()));
petugas.ifPresent(p -> {
if (CommonUtil.isNotNullOrEmpty(p.get("idPegawai")))
dtoBuilder.idPegawai(Integer.parseInt(p.get("idPegawai").toString()));
if (CommonUtil.isNotNullOrEmpty(p.get("namaPegawai")))
dtoBuilder.namaPegawai(p.get("namaPegawai").toString());
});
result.add(dtoBuilder.build());
});
return result;

View File

@ -1,22 +1,16 @@
package com.jasamedika.medifirst2000.entities;
import static javax.persistence.FetchType.LAZY;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.JoinColumn;
import javax.persistence.ManyToOne;
import javax.persistence.Table;
import javax.validation.constraints.NotNull;
import org.joda.time.DateTime;
import com.jasamedika.medifirst2000.base.BaseTransaction;
import com.jasamedika.medifirst2000.helper.Caption;
import lombok.Getter;
import lombok.Setter;
import javax.persistence.*;
import javax.validation.constraints.NotNull;
import java.util.Date;
import static javax.persistence.FetchType.LAZY;
/**
* class PelayananPasienPetugas
*
@ -41,6 +35,9 @@ public class PelayananPasienPetugas extends BaseTransaction {
@Caption(value = "Object Asal Produk")
private PelayananPasien pelayananPasien;
@Column(name = "PelayananPasien", insertable = false, updatable = false)
private String pelayananPasienId;
@ManyToOne(fetch = LAZY)
@JoinColumn(name = "ObjectAsalProdukFk")
@NotNull(message = "Object Asal Produk Harus Diisi")
@ -50,9 +47,6 @@ public class PelayananPasienPetugas extends BaseTransaction {
@Column(name = "ObjectAsalProdukFk", insertable = false, updatable = false)
private Integer ObjectAsalProdukId;
@Column(name = "PelayananPasien", insertable = false, updatable = false)
private String pelayananPasienId;
@ManyToOne(fetch = LAZY)
@JoinColumn(name = "ObjectJenisPetugasPeFk")
@NotNull(message = "Object Jenis Petugas Pe Harus Diisi")
@ -99,7 +93,7 @@ public class PelayananPasienPetugas extends BaseTransaction {
private String NoMasukId;
@Caption(value = "Tanggal Pelayanan")
private DateTime tglpelayanan;
private Date tglpelayanan;
@Column(name = "asaid")
@Caption(value = "Jenis Klasifikasi ASA")

View File

@ -4,9 +4,10 @@ import com.jasamedika.medifirst2000.base.vo.BaseTransactionVO;
import com.jasamedika.medifirst2000.helper.Caption;
import lombok.Getter;
import lombok.Setter;
import org.joda.time.DateTime;
import javax.persistence.Column;
import javax.validation.constraints.NotNull;
import java.util.Date;
import java.util.HashSet;
import java.util.Set;
@ -24,6 +25,12 @@ public class PelayananPasienPetugasVO extends BaseTransactionVO {
@Caption(value = "Is Petugas Pe P Jawab")
private Byte ispetugaspepjawab;
@NotNull(message = "Object Asal Produk Harus Diisi")
@Caption(value = "Object Asal Produk")
private PelayananPasienVO pelayananPasien;
private String pelayananPasienId;
@Caption(value = "Object Asal Produk")
private AsalProdukVO kdasalproduk;
@ -56,7 +63,7 @@ public class PelayananPasienPetugasVO extends BaseTransactionVO {
private String NoMasukId;
@Caption(value = "Tanggal Pelayanan")
private DateTime tglpelayanan;
private Date tglpelayanan;
@Caption(value = "Jenis Klasifikasi ASA")
private Byte asaId;