184 lines
4.6 KiB
Java
184 lines
4.6 KiB
Java
package com.jasamedika.medifirst2000.entities;
|
|
|
|
import java.util.ArrayList;
|
|
import java.util.HashSet;
|
|
import java.util.List;
|
|
import java.util.Set;
|
|
|
|
import javax.persistence.CascadeType;
|
|
import javax.persistence.Column;
|
|
import javax.persistence.Entity;
|
|
import javax.persistence.FetchType;
|
|
import javax.persistence.GeneratedValue;
|
|
import javax.persistence.GenerationType;
|
|
import javax.persistence.Id;
|
|
import javax.persistence.JoinColumn;
|
|
import javax.persistence.JoinTable;
|
|
import javax.persistence.ManyToMany;
|
|
import javax.persistence.OneToMany;
|
|
import javax.persistence.OrderBy;
|
|
import javax.persistence.Table;
|
|
|
|
import org.hibernate.annotations.NotFound;
|
|
import org.hibernate.annotations.NotFoundAction;
|
|
|
|
import com.fasterxml.jackson.annotation.JsonIgnore;
|
|
import com.jasamedika.medifirst2000.base.BaseMaster;
|
|
import com.jasamedika.medifirst2000.helper.Caption;
|
|
|
|
@Entity
|
|
@Table(name = "ObjekModulAplikasi_S")
|
|
public class ObjekModulAplikasi extends BaseMaster {
|
|
|
|
/**
|
|
*
|
|
*/
|
|
private static final long serialVersionUID = -4478308018473778656L;
|
|
|
|
@Id
|
|
@GeneratedValue(strategy=GenerationType.SEQUENCE, generator="public.objekmodulaplikasi_m_id_seq")
|
|
@javax.persistence.SequenceGenerator(
|
|
name="public.objekmodulaplikasi_m_id_seq",
|
|
sequenceName="public.objekmodulaplikasi_m_id_seq",
|
|
allocationSize=1
|
|
)
|
|
@Column(name = "id")
|
|
protected Integer id;
|
|
|
|
public Integer getId() {
|
|
|
|
return id;
|
|
}
|
|
|
|
public void setId(Integer id) {
|
|
this.id = id;
|
|
}
|
|
|
|
|
|
// @NotNull(message = "Kd Objek Modul Aplikasi tidak boleh kosong")
|
|
@Column(name = "KdObjekModulAplikasi", nullable = false, length = 6)
|
|
@Caption(value = "Kode Modul Aplikasi")
|
|
private String kdObjekModulAplikasi;
|
|
|
|
public String getKdObjekModulAplikasi() {
|
|
return kdObjekModulAplikasi;
|
|
}
|
|
|
|
public void setKdObjekModulAplikasi(String kdObjekModulAplikasi) {
|
|
this.kdObjekModulAplikasi = kdObjekModulAplikasi;
|
|
}
|
|
|
|
@Column(name = "ObjekModulAplikasi", nullable = true , length = 200)
|
|
@Caption(value="Objek Modul Aplikasi")
|
|
private String objekModulAplikasi;
|
|
|
|
public String getObjekModulAplikasi() {
|
|
return objekModulAplikasi;
|
|
}
|
|
|
|
public void setObjekModulAplikasi(String objekModulAplikasi) {
|
|
this.objekModulAplikasi = objekModulAplikasi;
|
|
}
|
|
|
|
@Column(name = "Fungsi", nullable = true , length = 500)
|
|
@Caption(value="Fungsi")
|
|
private String fungsi;
|
|
|
|
public String getFungsi() {
|
|
return fungsi;
|
|
}
|
|
|
|
public void setFungsi(String fungsi) {
|
|
this.fungsi = fungsi;
|
|
}
|
|
|
|
@Column(name = "AlamatUrlForm", nullable = true , length = 100)
|
|
@Caption(value="Alamat Url Form")
|
|
private String alamatUrlForm;
|
|
|
|
public String getAlamatUrlForm() {
|
|
return alamatUrlForm;
|
|
}
|
|
|
|
public void setAlamatUrlForm(String alamatUrlForm) {
|
|
this.alamatUrlForm = alamatUrlForm;
|
|
}
|
|
|
|
|
|
@Column(name = "Keterangan", nullable = true , length = 500)
|
|
@Caption(value="Keterangan")
|
|
private String keterangan;
|
|
|
|
public String getKeterangan() {
|
|
return keterangan;
|
|
}
|
|
|
|
public void setKeterangan(String keterangan) {
|
|
this.keterangan = keterangan;
|
|
}
|
|
|
|
|
|
@Column(name = "NoUrut")
|
|
private Integer noUrut;
|
|
|
|
public Integer getNoUrut() {
|
|
return noUrut;
|
|
}
|
|
|
|
public void setNoUrut(Integer noUrut) {
|
|
this.noUrut = noUrut;
|
|
}
|
|
|
|
/////////////////////
|
|
// Many To Many Relationship
|
|
////////////////////
|
|
|
|
@ManyToMany(fetch = FetchType.LAZY)
|
|
@JoinTable(name = "MapObjekModulAplikasiToModulAplikasi_S",
|
|
joinColumns = @JoinColumn(name = "objekModulAplikasiId"),
|
|
inverseJoinColumns = @JoinColumn(name = "modulAplikasiId"))
|
|
@JsonIgnore
|
|
private List<ModulAplikasi> modulAplikasi = new ArrayList<>();
|
|
|
|
|
|
public List<ModulAplikasi> getModulAplikasi() {
|
|
return modulAplikasi;
|
|
}
|
|
|
|
public void setModulAplikasi(List<ModulAplikasi> modulAplikasi) {
|
|
this.modulAplikasi = modulAplikasi;
|
|
}
|
|
|
|
|
|
/////////////////////
|
|
// Link Back Keys
|
|
////////////////////
|
|
|
|
|
|
|
|
@Column(name = "KdObjekModulAplikasiHead", insertable=false, updatable=false, nullable=true)
|
|
private Integer kdObjekModulAplikasiHead;
|
|
|
|
public Integer getKdObjekModulAplikasiHead() {
|
|
return kdObjekModulAplikasiHead;
|
|
}
|
|
|
|
public void setKdObjekModulAplikasiHead(Integer kdObjekModulAplikasiHead) {
|
|
this.kdObjekModulAplikasiHead = kdObjekModulAplikasiHead;
|
|
}
|
|
|
|
@NotFound(action = NotFoundAction.IGNORE)
|
|
@OneToMany(fetch = FetchType.EAGER, cascade = CascadeType.ALL, orphanRemoval = true, targetEntity = ObjekModulAplikasi.class)
|
|
@JoinColumn(name="KdObjekModulAplikasiHead")
|
|
@OrderBy("noUrut")
|
|
private Set<ObjekModulAplikasi> children = new HashSet<>();
|
|
|
|
public Set<ObjekModulAplikasi> getChildren() {
|
|
return children;
|
|
}
|
|
|
|
public void setChildren(Set<ObjekModulAplikasi> children) {
|
|
this.children = children;
|
|
}
|
|
|
|
} |