package com.cajp.giros.domain; import com.fasterxml.jackson.databind.annotation.JsonDeserialize; import com.fasterxml.jackson.databind.annotation.JsonSerialize; import com.cajp.giros.domain.util.CustomLocalDateSerializer; import com.cajp.giros.domain.util.ISO8601LocalDateDeserializer; import org.hibernate.annotations.Cache; import org.hibernate.annotations.CacheConcurrencyStrategy; import org.hibernate.annotations.Type; import org.joda.time.LocalDate; import javax.persistence.*; import javax.validation.constraints.*; import java.io.Serializable; import java.util.Objects; /** * A GirosCab. */ @Entity @Table(name = "T_GIROSCAB") @Cache(usage = CacheConcurrencyStrategy.NONSTRICT_READ_WRITE) public class GirosCab implements Serializable { @Id @GeneratedValue(strategy = GenerationType.AUTO) private Long id; @NotNull @Type(type = "org.jadira.usertype.dateandtime.joda.PersistentLocalDate") @JsonSerialize(using = CustomLocalDateSerializer.class) @JsonDeserialize(using = ISO8601LocalDateDeserializer.class) @Column(name = "data", nullable = false) private LocalDate data; @Column(name = "observacoes") private String observacoes; public Long getId() { return id; } public void setId(Long id) { this.id = id; } public LocalDate getData() { return data; } public void setData(LocalDate data) { this.data = data; } public String getObservacoes() { return observacoes; } public void setObservacoes(String observacoes) { this.observacoes = observacoes; } @Override public boolean equals(Object o) { if (this == o) { return true; } if (o == null || getClass() != o.getClass()) { return false; } GirosCab girosCab = (GirosCab) o; if ( ! Objects.equals(id, girosCab.id)) return false; return true; } @Override public int hashCode() { return Objects.hashCode(id); } @Override public String toString() { return "GirosCab{" + "id=" + id + ", data='" + data + "'" + ", observacoes='" + observacoes + "'" + '}'; } }