134 lines
3.0 KiB
Java
134 lines
3.0 KiB
Java
package com.jasamedika.medifirst2000.entities;
|
|
|
|
import java.io.Serializable;
|
|
import java.math.BigDecimal;
|
|
|
|
import javax.persistence.Column;
|
|
import javax.persistence.Entity;
|
|
import javax.persistence.GeneratedValue;
|
|
import javax.persistence.Id;
|
|
import javax.persistence.JoinColumn;
|
|
import javax.persistence.ManyToOne;
|
|
import javax.persistence.Table;
|
|
import javax.validation.constraints.NotNull;
|
|
|
|
import org.hibernate.annotations.GenericGenerator;
|
|
|
|
import com.jasamedika.medifirst2000.helper.Caption;
|
|
|
|
/**
|
|
* @author salmanoe
|
|
* @since Jan 30, 2023
|
|
*/
|
|
@Entity
|
|
@Table(name = "sdm_slipgajikomponen_t")
|
|
public class SlipGajiKomponen implements Serializable {
|
|
private static final long serialVersionUID = -3932381437404780760L;
|
|
|
|
@Id
|
|
@GenericGenerator(name = "uuid", strategy = "uuid")
|
|
@GeneratedValue(generator = "uuid")
|
|
@Column(columnDefinition = "CHAR(32)", unique = true)
|
|
@Caption(value = "ID")
|
|
protected String id;
|
|
|
|
@ManyToOne
|
|
@JoinColumn(name = "komponengajifk")
|
|
@Caption(value = "Komponen Slip Gaji")
|
|
private KomponenGaji komponen;
|
|
|
|
@Column(name = "nominal")
|
|
@Caption(value = "Nominal")
|
|
private BigDecimal nominal;
|
|
|
|
@ManyToOne
|
|
@NotNull(message = "Slip Gaji tidak boleh kosong")
|
|
@JoinColumn(name = "slipgajifk", columnDefinition = "CHAR(32)", nullable = false)
|
|
@Caption(value = "Slip Gaji")
|
|
private SlipGaji slipGaji;
|
|
|
|
public SlipGajiKomponen() {
|
|
}
|
|
|
|
public SlipGajiKomponen(String id, KomponenGaji komponen, BigDecimal nominal, SlipGaji slipGaji) {
|
|
this.id = id;
|
|
this.komponen = komponen;
|
|
this.nominal = nominal;
|
|
this.slipGaji = slipGaji;
|
|
}
|
|
|
|
public String getId() {
|
|
return id;
|
|
}
|
|
|
|
public void setId(String id) {
|
|
this.id = id;
|
|
}
|
|
|
|
public KomponenGaji getKomponen() {
|
|
return komponen;
|
|
}
|
|
|
|
public void setKomponen(KomponenGaji komponen) {
|
|
this.komponen = komponen;
|
|
}
|
|
|
|
public BigDecimal getNominal() {
|
|
return nominal;
|
|
}
|
|
|
|
public void setNominal(BigDecimal nominal) {
|
|
this.nominal = nominal;
|
|
}
|
|
|
|
public SlipGaji getSlipGaji() {
|
|
return slipGaji;
|
|
}
|
|
|
|
public void setSlipGaji(SlipGaji slipGaji) {
|
|
this.slipGaji = slipGaji;
|
|
}
|
|
|
|
public static long getSerialversionuid() {
|
|
return serialVersionUID;
|
|
}
|
|
|
|
public static SlipGajiKomponenBuilder builder() {
|
|
return new SlipGajiKomponenBuilder();
|
|
}
|
|
|
|
public static class SlipGajiKomponenBuilder {
|
|
private String id;
|
|
private KomponenGaji komponen;
|
|
private BigDecimal nominal;
|
|
private SlipGaji slipGaji;
|
|
|
|
public SlipGajiKomponenBuilder() {
|
|
}
|
|
|
|
public SlipGajiKomponenBuilder id(final String id) {
|
|
this.id = id;
|
|
return this;
|
|
}
|
|
|
|
public SlipGajiKomponenBuilder komponen(final KomponenGaji komponen) {
|
|
this.komponen = komponen;
|
|
return this;
|
|
}
|
|
|
|
public SlipGajiKomponenBuilder nominal(final BigDecimal nominal) {
|
|
this.nominal = nominal;
|
|
return this;
|
|
}
|
|
|
|
public SlipGajiKomponenBuilder slipGaji(final SlipGaji slipGaji) {
|
|
this.slipGaji = slipGaji;
|
|
return this;
|
|
}
|
|
|
|
public SlipGajiKomponen build() {
|
|
return new SlipGajiKomponen(this.id, this.komponen, this.nominal, this.slipGaji);
|
|
}
|
|
}
|
|
}
|