From 4cece06cb02c4d739efde422941a2f7de6d59368 Mon Sep 17 00:00:00 2001 From: Salman Manoe Date: Tue, 2 Jan 2024 14:23:22 +0700 Subject: [PATCH] Update model entities Pembuatan relasi aturan pakai di fitur verifikasi farmasi --- .../entities/PelayananPasien.java | 18 ++ .../entities/PelayananPasienRetur.java | 284 ++++++++++++++++++ .../vo/PelayananPasienReturVO.java | 161 ++++++++++ .../medifirst2000/vo/PelayananPasienVO.java | 10 + 4 files changed, 473 insertions(+) create mode 100644 jasamedika-domain/src/main/java/com/jasamedika/medifirst2000/entities/PelayananPasienRetur.java create mode 100644 jasamedika-domain/src/main/java/com/jasamedika/medifirst2000/vo/PelayananPasienReturVO.java diff --git a/jasamedika-domain/src/main/java/com/jasamedika/medifirst2000/entities/PelayananPasien.java b/jasamedika-domain/src/main/java/com/jasamedika/medifirst2000/entities/PelayananPasien.java index 8f40a59d..7c047a8a 100644 --- a/jasamedika-domain/src/main/java/com/jasamedika/medifirst2000/entities/PelayananPasien.java +++ b/jasamedika-domain/src/main/java/com/jasamedika/medifirst2000/entities/PelayananPasien.java @@ -11,6 +11,8 @@ import java.util.Date; import java.util.HashSet; import java.util.Set; +import static javax.persistence.FetchType.LAZY; + @Getter @Setter @Entity @@ -272,4 +274,20 @@ public class PelayananPasien extends MedicalRecordTransaction { private Boolean isPaket; private Boolean isSelisihPaket; + + @ManyToOne(fetch = LAZY) + @JoinColumn(name = "aturanpakaifk") + @Caption(value = "Aturan Pakai") + private AturanPakai aturanPakaiReguler; + + @Column(name = "aturanpakaifk", columnDefinition = "CHAR(32)", insertable = false, updatable = false) + private String aturanPakaiRegulerId; + + @ManyToOne(fetch = LAZY) + @JoinColumn(name = "aturanpakaisignafk") + @Caption(value = "Aturan Pakai Signa") + private AturanPakaiSigna aturanPakaiSigna; + + @Column(name = "aturanpakaisignafk", columnDefinition = "CHAR(32)", insertable = false, updatable = false) + private String aturanPakaiSignaId; } \ No newline at end of file diff --git a/jasamedika-domain/src/main/java/com/jasamedika/medifirst2000/entities/PelayananPasienRetur.java b/jasamedika-domain/src/main/java/com/jasamedika/medifirst2000/entities/PelayananPasienRetur.java new file mode 100644 index 00000000..1d81d8e8 --- /dev/null +++ b/jasamedika-domain/src/main/java/com/jasamedika/medifirst2000/entities/PelayananPasienRetur.java @@ -0,0 +1,284 @@ +package com.jasamedika.medifirst2000.entities; + +import com.fasterxml.jackson.annotation.JsonBackReference; +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 java.util.HashSet; +import java.util.Set; + +import static javax.persistence.FetchType.LAZY; + +/** + * @author salmanoe + * @version 1.0.0 + * @since 02/01/2024 + */ +@Getter +@Setter +@Entity +@Table(name = "pelayananpasienretur_t") +public class PelayananPasienRetur extends MedicalRecordTransaction { + @ManyToOne(fetch = FetchType.LAZY) + @JoinColumn(name = "Generik") + @Caption(value = "Generik") + private Generik generik; + + @Column(name = "Generik", insertable = false, updatable = false) + private Integer generikId; + + @Caption(value = "statusOrder") + @Column(name = "statusOrder") + private Byte statusOrder; + + @Caption(value = "jasa") + @Column(name = "jasa") + private Double jasa; + + @ManyToOne(fetch = FetchType.LAZY) + @JoinColumn(name = "KelasFk") + @Caption(value = "Produk") + private Kelas kelas; + + @Column(name = "KelasFk", insertable = false, updatable = false) + private Integer kelasId; + + @Caption(value = "Is Pasien") + @Column(name = "isPasien") + private Boolean isPasien; + + @Caption(value = "Is Pasien") + @Column(name = "isObat") + private Boolean isObat; + + @Caption(value = "Is Pasien") + @Column(name = "isDosis") + private Boolean isDosis; + + @Caption(value = "Is Pasien") + @Column(name = "isRoute") + private Boolean isRoute; + + @Caption(value = "Is Pasien") + @Column(name = "isDokumentasi") + private Boolean isDokumentasi; + + @Caption(value = "Is Pasien") + @Column(name = "isWaktu") + private Boolean isWaktu; + + @Caption(value = "Is Pasien") + @Column(name = "isInformasi") + private Boolean isInformasi; + + @Caption(value = "Is Benar") + @Column(name = "isBenar") + private Boolean isBenar; + + @ManyToOne(fetch = FetchType.LAZY) + @JoinColumn(name = "StrukFk") + private StrukPelayanan strukPelayanan; + + @Column(name = "StrukFk", nullable = false, insertable = false, updatable = false) + private String strukFk; + + @ManyToOne(fetch = FetchType.LAZY) + @JoinColumn(name = "StrukTerimaFk") + private StrukPelayanan strukTerima; + + @Column(name = "StrukTerimaFk", insertable = false, updatable = false) + private String strukTerimaId; + + @Caption(value = "nilaiKonversi") + @Column(name = "nilaiKonversi") + private Float nilaiKonversi; + + @Caption(value = "Status") + @Column(name = "status") + private String status; + + @Caption(value = "Tanggal Pelayanan") + @Column(name = "TglPelayanan") + private Date tglPelayanan; + + @Caption(value = "Harga Satuan") + @Column(name = "hargaSatuan") + private Double hargaSatuan; + + @Caption(value = "Harga Jual") + @Column(name = "HargaJual") + private Double hargaJual; + + @Caption(value = "Nilai Normal") + @Column(name = "NilaiNormal") + private Byte nilaiNormal; + + @Caption(value = "Piutang Penjamin") + @Column(name = "piutangPenjamin") + private Double piutangPenjamin; + + @Caption(value = "Piutang Rumah Sakit") + @Column(name = "piutangRumahSakit") + private Double piutangRumahSakit; + + @ManyToOne(fetch = FetchType.LAZY) + @JoinColumn(name = "NoBatch") + @Caption(value = "Struk Order") + private StrukPelayananDNoBatch noBatch; + + @Column(name = "NoBatch", columnDefinition = "CHAR(32)", insertable = false, updatable = false) + private String noBatchId; + + @ManyToOne(fetch = FetchType.LAZY) + @JoinColumn(name = "satuanViewFK") + @Caption(value = "satuanView") + private SatuanStandar satuanView; + + @Column(name = "satuanViewFK", insertable = false, updatable = false) + private Integer satuanViewId; + + @ManyToOne(fetch = FetchType.LAZY) + @JoinColumn(name = "StrukOrderFk") + @Caption(value = "Struk Order") + private StrukOrder strukOrder; + + @Column(name = "StrukOrderFk", columnDefinition = "CHAR(32)", insertable = false, updatable = false) + private String strukOrderId; + + @ManyToOne(fetch = FetchType.LAZY) + @JoinColumn(name = "JenisObatFk") + @Caption(value = "Jenis Obat") + private JenisObat jenisObat; + + @Column(name = "JenisObatFk", insertable = false, updatable = false) + private Integer jenisObatId; + + @ManyToOne(fetch = FetchType.LAZY) + @JoinColumn(name = "ProdukFk") + @NotNull(message = "Produk Harus Diisi") + @Caption(value = "Produk") + private Produk produk; + + @Column(name = "ProdukFk", insertable = false, updatable = false) + private Integer produkId; + + @Column(name = "Stock", nullable = false, length = 100) + @Caption(value = "Stock") + private Double stock; + + @Column(name = "Jumlah", nullable = false, length = 100) + @Caption(value = "Jumlah") + private Double jumlah; + + @Column(name = "AturanPakai", length = 100) + @Caption(value = "AturanPakai") + private String aturanPakai; + + @ManyToOne(fetch = FetchType.LAZY) + @JoinColumn(name = "RouteFk") + @Caption(value = "Route") + private RouteFarmasi route; + + @Column(name = "RouteFk", insertable = false, updatable = false) + private Integer routeId; + + @ManyToOne(fetch = FetchType.LAZY) + @JoinColumn(name = "KeteranganPakaiFk") + @Caption(value = "Keterangan Pakai") + private Stigma keteranganPakai; + + @Column(name = "KeteranganPakaiFk", insertable = false, updatable = false) + private Integer keteranganPakaiId; + + @Column(name = "KeteranganPakai2", length = 100) + @Caption(value = "KeteranganPakai2") + private String keteranganPakai2; + + @ManyToOne(fetch = FetchType.LAZY) + @Caption(value = "Kelompok Transaksi") + @JoinColumn(name = "KdKelompokTransaksi") + private KelompokTransaksi kelompokTransaksi; + + @Column(name = "KdKelompokTransaksi", insertable = false, updatable = false) + private Integer kelompokTransaksiId; + + @Column(name = "KeteranganLain", length = 100) + @Caption(value = "KeteranganLain") + private String keteranganLain; + + @Caption(value = "Harga Discount") + @Column(name = "hargaDiscount") + private Double hargaDiscount; + + @Caption(value = "hargaNetto") + @Column(name = "hargaNetto") + private Double hargaNetto; + + @Caption(value = "dosis") + @Column(name = "dosis") + private Float dosis; + + @Caption(value = "NoRecTriger") + @Column(name = "noRecTriger") + private String noRecTriger; + + @ManyToOne(fetch = FetchType.LAZY) + @JoinColumn(name = "StrukResepFk") + @Caption(value = "StrukResep") + private StrukResep strukResep; + + @Column(name = "StrukResepFk", columnDefinition = "CHAR(32)", insertable = false, updatable = false) + private String strukResepId; + + @ManyToOne(fetch = FetchType.LAZY) + @Caption(value = "JenisKemasan") + @JoinColumn(name = "JenisKemasanFK") + private JenisKemasan jenisKemasan; + + @Column(name = "JenisKemasanFK", insertable = false, updatable = false) + private Integer jenisKemasanId; + + @Column(name = "rKe") + @Caption(value = "rKe") + private String rKe; + + @JsonBackReference + @OneToMany(cascade = CascadeType.ALL, fetch = FetchType.LAZY, mappedBy = "pelayananPasien") + private Set pelayananPasienPetugasSet = new HashSet<>(); + + @JsonBackReference + @OneToMany(cascade = CascadeType.ALL, fetch = FetchType.LAZY, mappedBy = "pelayananPasien") + private Set racikan = new HashSet<>(); + + @JsonBackReference + @OneToMany(cascade = CascadeType.ALL, fetch = FetchType.LAZY, mappedBy = "pelayananPasien") + private Set pelayananPasienDetailSet = new HashSet<>(); + + @ManyToOne(fetch = LAZY) + @JoinColumn(name = "strukreturfk") + @Caption(value = "Struk Retur") + private StrukRetur strukRetur; + + @Column(name = "strukreturfk", columnDefinition = "CHAR(32)", insertable = false, updatable = false) + private String strukReturId; + + @ManyToOne(fetch = LAZY) + @JoinColumn(name = "aturanpakaifk") + @Caption(value = "Aturan Pakai") + private AturanPakai aturanPakaiReguler; + + @Column(name = "aturanpakaifk", columnDefinition = "CHAR(32)", insertable = false, updatable = false) + private String aturanPakaiRegulerId; + + @ManyToOne(fetch = LAZY) + @JoinColumn(name = "aturanpakaisignafk") + @Caption(value = "Aturan Pakai Signa") + private AturanPakaiSigna aturanPakaiSigna; + + @Column(name = "aturanpakaisignafk", columnDefinition = "CHAR(32)", insertable = false, updatable = false) + private String aturanPakaiSignaId; +} diff --git a/jasamedika-domain/src/main/java/com/jasamedika/medifirst2000/vo/PelayananPasienReturVO.java b/jasamedika-domain/src/main/java/com/jasamedika/medifirst2000/vo/PelayananPasienReturVO.java new file mode 100644 index 00000000..c228120c --- /dev/null +++ b/jasamedika-domain/src/main/java/com/jasamedika/medifirst2000/vo/PelayananPasienReturVO.java @@ -0,0 +1,161 @@ +package com.jasamedika.medifirst2000.vo; + +import com.jasamedika.medifirst2000.helper.Caption; +import lombok.Getter; +import lombok.Setter; + +import javax.validation.constraints.NotNull; +import java.util.Date; +import java.util.HashSet; +import java.util.Set; + +/** + * @author salmanoe + * @version 1.0.0 + * @since 02/01/2024 + */ +@Getter +@Setter +public class PelayananPasienReturVO extends MedicalRecordTransactionVO { + @Caption(value = "Generik") + private GenerikVO generik; + + @Caption(value = "statusOrder") + private Byte statusOrder; + + @Caption(value = "Jasa Farmasi") + private Double jasa; + + @Caption(value = "Produk") + private KelasVO kelas; + + @Caption(value = "Is Pasien") + private Boolean isPasien; + + @Caption(value = "Is Pasien") + private Boolean isObat; + + @Caption(value = "Is Pasien") + private Boolean isDosis; + + @Caption(value = "Is Pasien") + private Boolean isRoute; + + @Caption(value = "Is Pasien") + private Boolean isDokumentasi; + + @Caption(value = "Is Pasien") + private Boolean isWaktu; + + @Caption(value = "Is Pasien") + private Boolean isInformasi; + + @Caption(value = "Is Benar") + private Boolean isBenar; + + private StrukPelayananVO strukPelayanan; + + @Caption(value = "Status") + private String status; + + @Caption(value = "Tanggal Pelayanan") + private Date tglPelayanan; + + @Caption(value = "Harga Satuan") + private Double hargaSatuan; + + @Caption(value = "Harga Jual") + private Double hargaJual; + + @Caption(value = "Nilai Normal") + private Byte nilaiNormal; + + @Caption(value = "Piutang Penjamin") + private Double piutangPenjamin; + + @Caption(value = "Piutang Rumah Sakit") + private Double piutangRumahSakit; + + @Caption(value = "Struk Order") + private StrukPelayananDNoBatchVO noBatch; + + @Caption(value = "Struk Order") + private StrukOrderVO strukOrder; + + @Caption(value = "Jenis Obat") + private JenisObatVO jenisObat; + + @NotNull(message = "Produk Harus Diisi") + @Caption(value = "Produk") + private ProdukVO produk; + + @Caption(value = "Stock") + private Double stock; + + @Caption(value = "Jumlah") + private Double jumlah; + + @Caption(value = "AturanPakai") + private String aturanPakai; + + @Caption(value = "Route") + private RouteFarmasiVO route; + + @Caption(value = "Keterangan Pakai") + private StigmaVO keteranganPakai; + + @Caption(value = "KeteranganPakai2") + private String keteranganPakai2; + + @Caption(value = "Kelompok Transaksi") + private KelompokTransaksiVO kelompokTransaksi; + + @Caption(value = "KeteranganLain") + private String keteranganLain; + + @Caption(value = "Harga Discount") + private Double hargaDiscount; + + @Caption(value = "hargaNetto") + private Double hargaNetto; + + @Caption(value = "NoRecTriger") + private String noRecTriger; + + @Caption(value = "qty") + private Double qty; + + @Caption(value = "totalHarga") + private Double totalHarga; + + @Caption(value = "resepKe") + private Integer resepKe; + + private Set pelayananPasienPetugasSet = new HashSet<>(); + + private Set racikan = new HashSet<>(); + + private Set pelayananPasienDetailSet = new HashSet<>(); + + @Caption(value = "petugas") + private Set petugas = new HashSet<>(); + + private SatuanStandarVO satuanView; + + private Integer satuanViewId; + + @Caption(value = "Struk Retur") + private StrukReturVO strukRetur; + + private String strukReturId; + + @Caption(value = "Aturan Pakai") + private AturanPakaiVO aturanPakaiReguler; + + private String aturanPakaiRegulerId; + + @Caption(value = "Aturan Pakai Signa") + private AturanPakaiSignaVO aturanPakaiSigna; + + private String aturanPakaiSignaId; +} diff --git a/jasamedika-domain/src/main/java/com/jasamedika/medifirst2000/vo/PelayananPasienVO.java b/jasamedika-domain/src/main/java/com/jasamedika/medifirst2000/vo/PelayananPasienVO.java index 1e33bcbd..8c47e315 100644 --- a/jasamedika-domain/src/main/java/com/jasamedika/medifirst2000/vo/PelayananPasienVO.java +++ b/jasamedika-domain/src/main/java/com/jasamedika/medifirst2000/vo/PelayananPasienVO.java @@ -152,4 +152,14 @@ public class PelayananPasienVO extends MedicalRecordTransactionVO { private Boolean isPaket; private Boolean isSelisihPaket; + + @Caption(value = "Aturan Pakai") + private AturanPakaiVO aturanPakaiReguler; + + private String aturanPakaiRegulerId; + + @Caption(value = "Aturan Pakai Signa") + private AturanPakaiSignaVO aturanPakaiSigna; + + private String aturanPakaiSignaId; } \ No newline at end of file