package br.gov.mi.sip.corp.rhmi;
import java.util.Date;
import java.util.List;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.SequenceGenerator;
import javax.persistence.Table;
import javax.persistence.Temporal;
import javax.persistence.TemporalType;
import javax.persistence.Transient;
@Entity
@Table(schema="CORP_RHMI",name = "FUNCIONARIO")
public class Funcionario implements java.io.Serializable {
private static final long serialVersionUID = -345864153037047449L;
@Id
@Column(name = "ID_FUNCIONARIO", unique = true, nullable = false, precision = 22, scale = 0)
@SequenceGenerator(name="SQ_ID_FUNCIONARIO",sequenceName="CORP_RHMI.SQ_ID_FUNCIONARIO",allocationSize=1)
@GeneratedValue(strategy=GenerationType.SEQUENCE,generator="SQ_ID_FUNCIONARIO")
private Long idFuncionario;
@Column(name = "ID_TRATAMENTO", precision = 2, scale = 0)
private Long idTratamento;
@Column(name = "ID_PROFISSAO", precision = 3, scale = 0)
private Long idProfissao;
@Column(name = "ID_MUNICIPIO_NASCIMENTO", precision = 7, scale = 0)
private Long idMunicipioNascimento;
@Column(name = "NR_MATRICULA_SIAPE", length = 10)
private String nrMatriculaSiape;
@Column(name = "NM_FUNCIONARIO", nullable = false, length = 150)
private String nmFuncionario;
@Temporal(TemporalType.DATE)
@Column(name = "DT_NASCIMENTO", length = 7)
private Date dtNascimento;
@Column(name = "ST_SEXO", precision = 1, scale = 0)
private Boolean stSexo;
@Column(name = "CS_GRUPO_SANGUINEO", length = 1)
private String csGrupoSanguineo;
@Column(name = "CS_FATOR_RH", length = 1)
private String csFatorRh;
@Column(name = "CS_COR", length = 1)
private String csCor;
@Column(name = "CS_ESTADO_CIVIL", length = 1)
private String csEstadoCivil;
@Column(name = "NM_PAI", length = 150)
private String nmPai;
@Column(name = "NM_MAE", length = 150)
private String nmMae;
@Column(name = "ST_REGISTRO", nullable = false, length = 1)
private String stRegistro;
@Column(name = "ID_PESSOA", nullable = false)
private Long pessoa;
@Transient
private FuncionarioDocumento funcionarioDocumento;
public Long getIdFuncionario() {
return this.idFuncionario;
}
public void setIdFuncionario(Long idFuncionario) {
this.idFuncionario = idFuncionario;
}
public Long getIdTratamento() {
return this.idTratamento;
}
public void setIdTratamento(Long idTratamento) {
this.idTratamento = idTratamento;
}
public Long getIdProfissao() {
return this.idProfissao;
}
public void setIdProfissao(Long idProfissao) {
this.idProfissao = idProfissao;
}
public Long getIdMunicipioNascimento() {
return this.idMunicipioNascimento;
}
public void setIdMunicipioNascimento(Long idMunicipioNascimento) {
this.idMunicipioNascimento = idMunicipioNascimento;
}
public String getNrMatriculaSiape() {
return this.nrMatriculaSiape;
}
public void setNrMatriculaSiape(String nrMatriculaSiape) {
this.nrMatriculaSiape = nrMatriculaSiape;
}
public Date getDtNascimento() {
return this.dtNascimento;
}
public void setDtNascimento(Date dtNascimento) {
this.dtNascimento = dtNascimento;
}
public Boolean getStSexo() {
return this.stSexo;
}
public void setStSexo(Boolean stSexo) {
this.stSexo = stSexo;
}
public String getCsGrupoSanguineo() {
return this.csGrupoSanguineo;
}
public void setCsGrupoSanguineo(String csGrupoSanguineo) {
this.csGrupoSanguineo = csGrupoSanguineo;
}
public String getCsFatorRh() {
return this.csFatorRh;
}
public void setCsFatorRh(String csFatorRh) {
this.csFatorRh = csFatorRh;
}
public String getCsCor() {
return this.csCor;
}
public void setCsCor(String csCor) {
this.csCor = csCor;
}
public String getCsEstadoCivil() {
return this.csEstadoCivil;
}
public void setCsEstadoCivil(String csEstadoCivil) {
this.csEstadoCivil = csEstadoCivil;
}
public String getNmPai() {
return this.nmPai;
}
public void setNmPai(String nmPai) {
this.nmPai = nmPai;
}
public String getNmMae() {
return this.nmMae;
}
public void setNmMae(String nmMae) {
this.nmMae = nmMae;
}
public String getStRegistro() {
return this.stRegistro;
}
public void setStRegistro(String stRegistro) {
this.stRegistro = stRegistro;
}
public String getNmFuncionario() {
return nmFuncionario;
}
public void setNmFuncionario(String nmFuncionario) {
this.nmFuncionario = nmFuncionario;
}
public Long getPessoa() {
return pessoa;
}
public void setPessoa(Long pessoa) {
this.pessoa = pessoa;
}
public FuncionarioDocumento getFuncionarioDocumento() {
return funcionarioDocumento;
}
public void setFuncionarioDocumento(FuncionarioDocumento funcionarioDocumento) {
this.funcionarioDocumento = funcionarioDocumento;
}
public void setFuncionarioDocumento(
List<FuncionarioDocumento> listaFuncionarioDocumento) {
// TODO Auto-generated method stub
}
}
package br.gov.mi.sip.corp.rhmi;
import java.util.Date;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.SequenceGenerator;
import javax.persistence.Table;
import javax.persistence.Temporal;
import javax.persistence.TemporalType;
@Entity
@Table(schema="CORP_RHMI",name = "FUNCIONARIO_DOCUMENTO")
public class FuncionarioDocumento implements java.io.Serializable {
private static final long serialVersionUID = -689430893376394766L;
@Id
@Column(name = "ID_FUNCIONARIO_DOCUMENTO", unique = true, nullable = false, precision = 22, scale = 0)
@SequenceGenerator(name="SQ_ID_FUNCIONARIO_DOCUMENTO",sequenceName="CORP_RHMI.ID_FUNCIONARIO_DOCUMENTO",allocationSize=1)
@GeneratedValue(strategy=GenerationType.SEQUENCE,generator="SQ_ID_FUNCIONARIO_DOCUMENTO")
private Long idFuncionarioDocumento;
@Column(name = "ID_FUNCIONARIO", nullable = false)
private Long funcionario;
@Column(name = "ID_TIPO_DOCUMENTO", nullable = false, precision = 10, scale = 0)
private Long idTipoDocumento;
@Column(name = "ID_UF", precision = 2, scale = 0)
private Long idUf;
@Column(name = "ID_MUNICIPIO", precision = 7, scale = 0)
private Long idMunicipio;
@Column(name = "NR_DOCUMENTO", nullable = false, length = 30)
private String nrDocumento;
@Column(name = "NR_SECAO", precision = 5, scale = 0)
private Long nrSecao;
@Column(name = "NR_ZONA", precision = 5, scale = 0)
private Long nrZona;
@Temporal(TemporalType.DATE)
@Column(name = "DT_EMISSAO", length = 7)
private Date dtEmissao;
@Temporal(TemporalType.DATE)
@Column(name = "DT_VALIDADE", length = 7)
private Date dtValidade;
@Column(name = "ST_REGISTRO", nullable = false, length = 1)
private String stRegistro;
@Column(name = "DS_ORGAO_EMISSOR", nullable = true, length = 25)
private String dsOrgaoEmissor;
@Column(name = "DS_OBSERVACOES", nullable = true)
private String dsObservacoes;
public FuncionarioDocumento() {
}
public Long getIdFuncionarioDocumento() {
return this.idFuncionarioDocumento;
}
public void setIdFuncionarioDocumento(Long idFuncionarioDocumento) {
this.idFuncionarioDocumento = idFuncionarioDocumento;
}
public Long getFuncionario() {
return this.funcionario;
}
public void setFuncionario(Long funcionario) {
this.funcionario = funcionario;
}
public Long getIdTipoDocumento() {
return this.idTipoDocumento;
}
public void setIdTipoDocumento(Long idTipoDocumento) {
this.idTipoDocumento = idTipoDocumento;
}
public Long getIdUf() {
return this.idUf;
}
public void setIdUf(Long idUf) {
this.idUf = idUf;
}
public Long getIdMunicipio() {
return this.idMunicipio;
}
public void setIdMunicipio(Long idMunicipio) {
this.idMunicipio = idMunicipio;
}
public String getNrDocumento() {
return this.nrDocumento;
}
public void setNrDocumento(String nrDocumento) {
this.nrDocumento = nrDocumento;
}
public Long getNrSecao() {
return this.nrSecao;
}
public void setNrSecao(Long nrSecao) {
this.nrSecao = nrSecao;
}
public Long getNrZona() {
return this.nrZona;
}
public void setNrZona(Long nrZona) {
this.nrZona = nrZona;
}
public Date getDtEmissao() {
return this.dtEmissao;
}
public void setDtEmissao(Date dtEmissao) {
this.dtEmissao = dtEmissao;
}
public Date getDtValidade() {
return this.dtValidade;
}
public void setDtValidade(Date dtValidade) {
this.dtValidade = dtValidade;
}
public String getStRegistro() {
return this.stRegistro;
}
public void setStRegistro(String stRegistro) {
this.stRegistro = stRegistro;
}
public String getDsOrgaoEmissor() {
return dsOrgaoEmissor;
}
public void setDsOrgaoEmissor(String dsOrgaoEmissor) {
this.dsOrgaoEmissor = dsOrgaoEmissor;
}
public String getDsObservacoes() {
return dsObservacoes;
}
public void setDsObservacoes(String dsObservacoes) {
this.dsObservacoes = dsObservacoes;
}
}
o que eu tentei foi:
public List<Funcionario> filtrarPesquisaDocumento(String numeroDocumento) {
Session s = (Session) entityManager.getDelegate();
Criteria criteria = s.createCriteria(Funcionario.class);
criteria.alias("FuncionarioDocumento","ft");
criteria.add(Restrictions.ilike("ft.nrDocumento", numeroDocumento ,MatchMode.ANYWHERE));
return criteria.list();
}