package com.eksad.masterdata.domain; import com.eksad.ddms.common.util.object.EntityObject; import com.fasterxml.jackson.annotation.JsonFormat; import jakarta.persistence.*; import javax.validation.constraints.NotNull; import java.util.Date; import java.util.Objects; @Entity @Table(name = "TRX_PAYMENT_ORAFIN") public class PaymentOrafin implements EntityObject<PaymentOrafin> { @Id @GeneratedValue(generator = "trx_payment_orafin_gen") @SequenceGenerator(name = "trx_payment_orafin_gen", sequenceName = "trx_payment_orafin_seq") Integer id; @Version @Column(name = "version") private Long version; @Column(unique = true) @NotNull(message = "paymentOrafinID cannot be null") private String paymentOrafinID; private String woID; private String noKwitansi; private String reqPayload; private String resPayload; @Temporal(TemporalType.DATE) @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "dd-MMM-yy", timezone = "Asia/Jakarta") private Date kwitansiDate; private String orafinStatus; @Embedded private CreationalSpecification paymentOrafinCreational; public PaymentOrafin() { } public PaymentOrafin(String woID, Long version, String noKwitansi, String reqPayload, String resPayload, String paymentOrafinID, Date kwitansiDate, CreationalSpecification paymentOrafinCreational) { this.woID = woID; this.noKwitansi = noKwitansi; this.reqPayload = reqPayload; this.resPayload = resPayload; this.paymentOrafinID = paymentOrafinID; this.kwitansiDate = kwitansiDate; this.paymentOrafinCreational = paymentOrafinCreational; } public Integer getId() { return id; } public void setId(Integer id) { this.id = id; } public String getWoID() { return woID; } public void setWoID(String woID) { this.woID = woID; } public String getNoKwitansi() { return noKwitansi; } public void setNoKwitansi(String noKwitansi) { this.noKwitansi = noKwitansi; } public String getReqPayload() { return reqPayload; } public void setReqPayload(String reqPayload) { this.reqPayload = reqPayload; } public String getResPayload() { return resPayload; } public void setResPayload(String resPayload) { this.resPayload = resPayload; } public String getPaymentOrafinID() { return paymentOrafinID; } public void setPaymentOrafinID(String paymentOrafinID) { this.paymentOrafinID = paymentOrafinID; } public Date getKwitansiDate() { return kwitansiDate; } public void setKwitansiDate(Date kwitansiDate) { this.kwitansiDate = kwitansiDate; } public Long getVersion() { return version; } public void setVersion(Long version) { this.version = version; } public String getOrafinStatus() { return orafinStatus; } public void setOrafinStatus(String orafinStatus) { this.orafinStatus = orafinStatus; } public CreationalSpecification getPaymentOrafinCreational() { return paymentOrafinCreational; } public void setPaymentOrafinCreational(CreationalSpecification paymentOrafinCreational) { this.paymentOrafinCreational = paymentOrafinCreational; } @Override public int hashCode() { int hash = 3; hash = 79 * hash + Objects.hashCode(this.woID); hash = 79 * hash + Objects.hashCode(this.version); hash = 79 * hash + Objects.hashCode(this.paymentOrafinID); hash = 79 * hash + Objects.hashCode(this.noKwitansi); hash = 79 * hash + Objects.hashCode(this.reqPayload); hash = 79 * hash + Objects.hashCode(this.resPayload); hash = 79 * hash + Objects.hashCode(this.kwitansiDate); hash = 79 * hash + Objects.hashCode(this.paymentOrafinCreational); return hash; } @Override public boolean equals(Object obj) { if (this == obj) { return true; } if (obj == null) { return false; } if (getClass() != obj.getClass()) { return false; } final PaymentOrafin other = (PaymentOrafin) obj; if (!Objects.equals(this.id, other.id)) { return false; } return true; } @Override public boolean sameIdentityAs(PaymentOrafin t) { return this.equals(t); } }