Go to most recent revision |
Blame |
Compare with Previous |
Last modification |
View Log
| Download
| RSS feed
package br.com.ec.domain.model;
import java.io.Serializable;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.OneToOne;
import javax.persistence.Table;
import javax.persistence.Transient;
import javax.validation.constraints.NotNull;
import org.hibernate.annotations.ForeignKey;
import br.edu.cesmac.core.interfaces.Alterar;
import br.edu.cesmac.core.interfaces.Cadastrar;
import br.edu.cesmac.core.util.VerificadorUtil;
@
Entity
@Table
(name=
"sec_empresa", schema=
"sc_sec")
public class Empresa
implements Serializable {
private static final long serialVersionUID = 1L
;
private Long codigo
;
private Pessoa pessoa
;
public Empresa
() {}
public Empresa
(Long codigo
) {
this.
codigo = codigo
;
}
@Id
@GeneratedValue
(strategy = GenerationType.
IDENTITY)
@Column
(name=
"cod_empresa", nullable=
false)
public Long getCodigo
() {
return codigo
;
}
public void setCodigo
(Long codigo
) {
this.
codigo = codigo
;
}
@OneToOne
@ForeignKey
(name=
"fk_empresa_pessoa")
@NotNull
(message=
"Obrigatório informar a pessoa", groups=
{Cadastrar.
class, Alterar.
class})
@JoinColumn
(name=
"seq_pessoa", referencedColumnName=
"seq_pessoa")
public Pessoa getPessoa
() {
return pessoa
;
}
public void setPessoa
(Pessoa pessoa
) {
this.
pessoa = pessoa
;
}
@Transient
public String getNomeDaPessoa
() {
return VerificadorUtil.
naoEstaNulo(pessoa
) ? pessoa.
getNome() :
null;
}
}