/* * Click nbfs://nbhost/SystemFileSystem/Templates/Licenses/license-default.txt to change this license * Click nbfs://nbhost/SystemFileSystem/Templates/Classes/Class.java to edit this template */ package com.megatim.generatetxt.model; import java.io.Serializable; import java.time.LocalDateTime; import java.util.Objects; import java.util.Set; import javax.persistence.Entity; import javax.persistence.FetchType; import javax.persistence.GeneratedValue; import javax.persistence.Id; import javax.persistence.JoinColumn; import javax.persistence.ManyToOne; import javax.persistence.OneToMany; import javax.persistence.Table; import javax.persistence.UniqueConstraint; import lombok.Getter; import lombok.NoArgsConstructor; import lombok.Setter; import org.hibernate.annotations.CreationTimestamp; import org.hibernate.annotations.UpdateTimestamp; /** * * @author ASUS */ @Entity @Getter @Setter @NoArgsConstructor @Table(uniqueConstraints = { @UniqueConstraint(name = "UniquecodeColonneAndCodeTypeFichier", columnNames = {"codeColonne", "codeTypeFichier"})}) public class AlphaNumeriqueField implements Serializable { @GeneratedValue @Id private Long id; // @ManyToOne(fetch = FetchType.LAZY) // @JoinColumn(name = "codeTypeFichier") // private Validateur validateur; private String codeColonne; private String codeTypeFichier; private int taille; private int index; private String typeDonnee; @CreationTimestamp private LocalDateTime dateCreation; @UpdateTimestamp private LocalDateTime dateMiseAJour; @OneToMany(mappedBy = "alphaNumeriqueField") private Set metaAlphaNumeriqueFields; public AlphaNumeriqueField(String type, String codeColonne, int taille, int index) { // this.validateur = validateur; this.codeColonne = codeColonne; this.taille = taille; this.index = index; this.typeDonnee = type; } @Override public int hashCode() { int hash = 7; // hash = 31 * hash + Objects.hashCode(this.validateur.getCodeTypeFichier()); hash = 31 * hash + Objects.hashCode(this.codeColonne); 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 AlphaNumeriqueField other = (AlphaNumeriqueField) obj; if (!Objects.equals(this.codeTypeFichier, other.codeTypeFichier)) { return false; } return Objects.equals(this.codeColonne, other.codeColonne); } @Override public String toString() { return codeTypeFichier + " - " + codeColonne; } }