package com.jasamedika.medifirst2000.entities; import com.fasterxml.jackson.annotation.JsonManagedReference; 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 java.util.HashSet; import java.util.Set; import static javax.persistence.CascadeType.ALL; import static javax.persistence.FetchType.LAZY; @Getter @Setter @Entity @Table(name = "PapRiwayatPsikososial_T") public class PapRiwayatPsikososial extends BaseTransaction { @ManyToOne @JoinColumn(name = "ObjectRegistrasiPelayananPasienFk") private RegistrasiPelayananPasien registrasiPelayananPasien; @Column(name = "ObjectRegistrasiPelayananPasienFk", columnDefinition = "CHAR(32)", insertable = false, updatable = false) private String registrasiPelayananPasienId; @ManyToOne @JoinColumn(name = "ObjectPasienFk") @NotNull(message = "Pasien tidak boleh kosong") private AntrianPasienDiPeriksa pasienDaftar; @Column(name = "ObjectPasienFk", columnDefinition = "CHAR(32)", insertable = false, updatable = false, nullable = false) private String pasienId; @NotNull(message = "Tgl Input tidak boleh kosong") @Column(name = "tglInput", nullable = false) @Caption(value = "Tgl Input") private Date tglInput; @Column(name = "keteranganStatusPsikologiLainnya") @Caption(value = "keteranganStatusPsikologiLainnya") private String keteranganStatusPsikologiLainnya; @ManyToOne @JoinColumn(name = "ObjectHubunganPasienFk") @Caption(value = "Object HubunganPasien") private StatusBaikTidakBaik hubunganPasien; @Column(name = "ObjectTempatTinggalFk", insertable = false, updatable = false) private Integer hubunganPasienId; @JsonManagedReference @OneToMany(cascade = ALL, fetch = LAZY, mappedBy = "papRiwayatPsikososial") @Caption(value = "papStatusPsikologiSet") private Set papStatusPsikososialSet = new HashSet<>(); @JsonManagedReference @OneToMany(cascade = ALL, fetch = LAZY, mappedBy = "papRiwayatPsikososial") @Caption(value = "papTempatTinggalSet") private Set papTempatTinggalSet = new HashSet<>(); @Column(name = "keteranganStatusSosialLainnya") @Caption(value = "keteranganStatusSosialLainnya") private String keteranganStatusSosialLainnya; @OneToMany(cascade = ALL, fetch = LAZY, mappedBy = "papRiwayatPsikososial") @Caption(value = "papStatusMentalSet") private Set papStatusMentalSet = new HashSet<>(); @Column(name = "adaMasalahPerilaku") @Caption(value = "adaMasalahPerilaku") private String adaMasalahPerilaku; @Column(name = "perilakuKekekerasan") @Caption(value = "perilakuKekekerasan") private String perilakuKekekerasan; @ManyToOne(fetch = LAZY) @Caption(value = "pengkajianAwalBaru") @JoinColumn(name = "ObjectPengkajianAwalBaruFk") private PengkajianAwalBaru pengkajianAwalBaru; @Column(name = "ObjectPengkajianAwalBaruFk", columnDefinition = "CHAR(32)", insertable = false, updatable = false) private String pengkajianAwalBaruId; }