package com.jasamedika.medifirst2000.entities; import java.util.Date; import java.util.HashSet; import java.util.Set; import javax.persistence.CascadeType; import javax.persistence.Column; import javax.persistence.Entity; import javax.persistence.FetchType; import javax.persistence.JoinColumn; import javax.persistence.ManyToOne; import javax.persistence.OneToMany; import javax.persistence.Table; import com.fasterxml.jackson.annotation.JsonBackReference; import com.fasterxml.jackson.annotation.JsonIgnoreProperties; import com.jasamedika.medifirst2000.base.BaseTransaction; import com.jasamedika.medifirst2000.helper.Caption; @Entity @Table(name="PlanningPegawaiStatus_T") @JsonIgnoreProperties({ "hibernateLazyInitializer", "handler" }) public class PlanningPegawaiStatus extends BaseTransaction{ @Caption(value="No Planning") @Column(name="NoPlanning", length=15, nullable=true) private String noPlanning; @ManyToOne(fetch=FetchType.LAZY) @Caption(value="Object Pegawai") @JoinColumn(name="ObjectPegawaiFk") private Pegawai pegawai; @Column(name="ObjectPegawaiFk", nullable=true, insertable=false, updatable=false) private Integer pegawaiId; @ManyToOne(fetch=FetchType.LAZY) @Caption(value="Object Status Pegawai Plan") @JoinColumn(name="ObjectStatusPegawaiPlanFk") private StatusPegawai statusPegawaiPlan; @Column(name="ObjectStatusPegawaiPlanFk", nullable=true, insertable=false, updatable=false) private Integer statusPegawaiPlanId; @JsonBackReference @OneToMany(cascade = CascadeType.ALL, fetch = FetchType.LAZY, mappedBy = "planningPegawaiStatus", orphanRemoval = true) private Set listTanggal = new HashSet<>(); @ManyToOne(fetch=FetchType.LAZY) @Caption(value="Object Departemen") @JoinColumn(name="ObjectDepartemenFk") private Departemen departemen; @Column(name="ObjectDepartemenFk", nullable=true, insertable=false, updatable=false) private Integer departemenId; @Caption(value="Deskripsi Status Pegawai Plan") @Column(name="DeskripsiStatusPegawaiPlan", length=1000, nullable=true) private String deskripsiStatusPegawaiPlan; @Caption(value="Keterangan Lainya Plan") @Column(name="KeteranganLainyaPlan", length=1000, nullable=true) private String keteranganLainyaPlan; @ManyToOne(fetch=FetchType.LAZY) @Caption(value="Object No SK") @JoinColumn(name="ObjectNoSkFk") private SuratKeputusan noSk; @Column(name="ObjectNoSkFk", nullable=true, insertable=false, updatable=false) private Integer noSkId; @ManyToOne(fetch=FetchType.LAZY) @Caption(value="Object Status Pegawai Exec") @JoinColumn(name="ObjectStatusPegawaiExecFk") private StatusPegawai statusPegawaiExec; @Column(name="ObjectStatusPegawaiExecFk", nullable=true, insertable=false, updatable=false) private Integer statusPegawaiExecId; @Caption(value="Deskripsi Status Pegawai Exec") @Column(name="DeskripsiStatusPegawaiExec", length=1000, nullable=true) private String deskripsiStatusPegawaiExec; @Caption(value="Keterangan Lainya Exec") @Column(name="KeteranganLainyaExec", length=1000, nullable=true) private String keteranganLainyaExec; @Caption(value="Tgl Pengajuan") @Column(name="TglPengajuan", nullable=true) private Date tglPengajuan; @Caption(value="Tgl Keputusan") @Column(name="TglKeputusan", nullable=true) private Date tglKeputusan; @Caption(value="Approval Status") @Column(name="ApprovalStatus", nullable=true) private Integer approvalStatus; @Caption(value="jumlahHari") @Column(name="jumlahHari", nullable=true) private Integer jumlahHari; @Caption(value="keterangan") @Column(name="keterangan", nullable=true) private String keterangan; @Caption(value="Jenis Perawatan") @Column(name="jenisPerawatan", nullable=true) private Integer jenisPerawatan; //Add field untuk permohonan perubahan kehadiran karena sakit @Caption(value="Alamat Selama Cuti") @Column(name="alamatCuti", nullable=true) private String alamatCuti; //Add field untuk input alamat selama cuti di menu pengajuan Cuti @Caption(value="Nomor Telepon") @Column(name="nomorTelepon", nullable=true) private String nomorTelepon; @Caption(value="Nomor Surat Tugas") @Column(name="noSuratTugas", nullable=true) private String noSuratTugas; @Caption(value="Nomor Nota Dinas") @Column(name="noNotaDinas", nullable=true) private String noNotaDinas; @Caption(value="Tgl Nota Dinas") @Column(name="TglNotaDinas", nullable=true) private Date tglNotaDinas; @Caption(value="Alamat Tugas Dinas") @Column(name="alamatTugas", nullable=true) private String alamatTugas; @ManyToOne(optional=true,fetch=FetchType.LAZY) @Caption(value="Object Jabatan Pemberi Nota Dinas") @JoinColumn(name="ObjectJabatanPemberiNotaDinasFk", nullable=true) private Jabatan jabatanPemberiNotaDinas; @Column(name="ObjectJabatanPemberiNotaDinasFk", nullable=true, insertable=false, updatable=false) private Integer jabatanIdPemberiNotaDinas; @Caption(value="is Cuti Luar Negeri") @Column(name="isCutiLuarNegeri", nullable=true) private Boolean isCutiLuarNegeri; @Caption(value="is Cuti Luar Kota") @Column(name="isCutiLuarKota", nullable=true) private Boolean isCutiLuarKota; public String getNoPlanning() { return noPlanning; } public void setNoPlanning(String noPlanning) { this.noPlanning = noPlanning; } public Pegawai getPegawai() { return pegawai; } public void setPegawai(Pegawai pegawai) { this.pegawai = pegawai; } public Integer getPegawaiId() { return pegawaiId; } public void setPegawaiId(Integer pegawaiId) { this.pegawaiId = pegawaiId; } public StatusPegawai getStatusPegawaiPlan() { return statusPegawaiPlan; } public void setStatusPegawaiPlan(StatusPegawai statusPegawaiPlan) { this.statusPegawaiPlan = statusPegawaiPlan; } public Integer getStatusPegawaiPlanId() { return statusPegawaiPlanId; } public void setStatusPegawaiPlanId(Integer statusPegawaiPlanId) { this.statusPegawaiPlanId = statusPegawaiPlanId; } public Departemen getDepartemen() { return departemen; } public void setDepartemen(Departemen departemen) { this.departemen = departemen; } public Integer getDepartemenId() { return departemenId; } public void setDepartemenId(Integer departemenId) { this.departemenId = departemenId; } public String getDeskripsiStatusPegawaiPlan() { return deskripsiStatusPegawaiPlan; } public void setDeskripsiStatusPegawaiPlan(String deskripsiStatusPegawaiPlan) { this.deskripsiStatusPegawaiPlan = deskripsiStatusPegawaiPlan; } public String getKeteranganLainyaPlan() { return keteranganLainyaPlan; } public void setKeteranganLainyaPlan(String keteranganLainyaPlan) { this.keteranganLainyaPlan = keteranganLainyaPlan; } public SuratKeputusan getNoSk() { return noSk; } public void setNoSk(SuratKeputusan noSk) { this.noSk = noSk; } public Integer getNoSkId() { return noSkId; } public void setNoSkId(Integer noSkId) { this.noSkId = noSkId; } public StatusPegawai getStatusPegawaiExec() { return statusPegawaiExec; } public void setStatusPegawaiExec(StatusPegawai statusPegawaiExec) { this.statusPegawaiExec = statusPegawaiExec; } public Integer getStatusPegawaiExecId() { return statusPegawaiExecId; } public void setStatusPegawaiExecId(Integer statusPegawaiExecId) { this.statusPegawaiExecId = statusPegawaiExecId; } public String getDeskripsiStatusPegawaiExec() { return deskripsiStatusPegawaiExec; } public void setDeskripsiStatusPegawaiExec(String deskripsiStatusPegawaiExec) { this.deskripsiStatusPegawaiExec = deskripsiStatusPegawaiExec; } public String getKeteranganLainyaExec() { return keteranganLainyaExec; } public void setKeteranganLainyaExec(String keteranganLainyaExec) { this.keteranganLainyaExec = keteranganLainyaExec; } public Date getTglPengajuan() { return tglPengajuan; } public void setTglPengajuan(Date tglPengajuan) { this.tglPengajuan = tglPengajuan; } public Date getTglKeputusan() { return tglKeputusan; } public void setTglKeputusan(Date tglKeputusan) { this.tglKeputusan = tglKeputusan; } public Integer getApprovalStatus() { return approvalStatus; } public void setApprovalStatus(Integer approvalStatus) { this.approvalStatus = approvalStatus; } public Integer getJumlahHari() { return jumlahHari; } public void setJumlahHari(Integer jumlahHari) { this.jumlahHari = jumlahHari; } public Set getListTanggal() { return listTanggal; } public void setListTanggal(Set listTanggal) { this.listTanggal = listTanggal; } public String getKeterangan() { return keterangan; } public void setKeterangan(String keterangan) { this.keterangan = keterangan; } public Integer getJenisPerawatan() { return jenisPerawatan; } public void setJenisPerawatan(Integer jenisPerawatan) { this.jenisPerawatan = jenisPerawatan; } public String getAlamatCuti() { return alamatCuti; } public void setAlamatCuti(String alamatCuti) { this.alamatCuti = alamatCuti; } public String getNomorTelepon() { return nomorTelepon; } public void setNomorTelepon(String nomorTelepon) { this.nomorTelepon = nomorTelepon; } public String getNoSuratTugas() { return noSuratTugas; } public void setNoSuratTugas(String noSuratTugas) { this.noSuratTugas = noSuratTugas; } public String getNoNotaDinas() { return noNotaDinas; } public void setNoNotaDinas(String noNotaDinas) { this.noNotaDinas = noNotaDinas; } public Date getTglNotaDinas() { return tglNotaDinas; } public void setTglNotaDinas(Date tglNotaDinas) { this.tglNotaDinas = tglNotaDinas; } public String getAlamatTugas() { return alamatTugas; } public void setAlamatTugas(String alamatTugas) { this.alamatTugas = alamatTugas; } public Jabatan getJabatanPemberiNotaDinas() { return jabatanPemberiNotaDinas; } public void setJabatanPemberiNotaDinas(Jabatan jabatanPemberiNotaDinas) { this.jabatanPemberiNotaDinas = jabatanPemberiNotaDinas; } public Integer getJabatanIdPemberiNotaDinas() { return jabatanIdPemberiNotaDinas; } public void setJabatanIdPemberiNotaDinas(Integer jabatanIdPemberiNotaDinas) { this.jabatanIdPemberiNotaDinas = jabatanIdPemberiNotaDinas; } public Boolean getIsCutiLuarNegeri() { return isCutiLuarNegeri; } public void setIsCutiLuarNegeri(Boolean isCutiLuarNegeri) { this.isCutiLuarNegeri = isCutiLuarNegeri; } public void addListTanggal(ListTanggalCuti listTgl) { listTanggal.add(listTgl); listTgl.setPlanningPegawaiStatus(this); } public void removeListTanggal(ListTanggalCuti listTgl) { listTanggal.remove(listTgl); listTgl.setPlanningPegawaiStatus(null); } public Boolean getIsCutiLuarKota() { return isCutiLuarKota; } public void setIsCutiLuarKota(Boolean isCutiLuarKota) { this.isCutiLuarKota = isCutiLuarKota; } }