PessoaFisicaUtil.java
4.45 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
package br.gov.mc.arquitetura.util;
import java.util.ArrayList;
import java.util.Collection;
import org.hibernate.Criteria;
import org.hibernate.criterion.Restrictions;
import org.springframework.stereotype.Repository;
import br.gov.mc.arquitetura.persistencia.impl.UniversalDaoImpl;
import br.gov.mc.corporativo.entidade.CrpDocumentoPessoaFisica;
import br.gov.mc.corporativo.entidade.CrpPessoaFisica;
@Repository("pessoaFisicaUtil")
public class PessoaFisicaUtil extends UniversalDaoImpl {
@SuppressWarnings("unchecked")
public Collection<CrpDocumentoPessoaFisica> pesquisar(Integer idPessoa, Integer idTipDocumento) {
Criteria c = getCurrentSession().createCriteria(CrpDocumentoPessoaFisica.class);
c.createCriteria("tipoDocumento").add(Restrictions.idEq(idTipDocumento));
c.createCriteria("pessoaFisica").add(Restrictions.idEq(idPessoa));
return listByExample(c);
}
public Collection<CrpPessoaFisica> pesquisar(CrpPessoaFisica pf) {
if (pf != null) {
Criteria c = getCurrentSession().createCriteria(pf.getClass());
if (pf.getDataAlteracao() != null) {
c.add(Restrictions.eq("dataAlteracao", pf.getDataAlteracao()));
}
if (pf.getId() != null) {
c.add(Restrictions.idEq(pf.getId()));
}
if (pf.getTipoPessoa() != null && pf.getTipoPessoa().getId() != null) {
c.createCriteria("tipoPessoa").add(Restrictions.idEq(pf.getTipoPessoa().getId()));
}
if (pf.getTipoOperacao() != null && !"".equals(pf.getTipoOperacao())) {
c.add(Restrictions.ilike("tipoOperacao", "%" + pf.getTipoOperacao() + "%"));
}
if (pf.getSituacaoPessoaOrgao() != null && pf.getSituacaoPessoaOrgao().getId() != null) {
c.createCriteria("situacaoPessoaOrgao").add(Restrictions.idEq(pf.getSituacaoPessoaOrgao().getId()));
}
if (pf.getSituacaoPessoaReceitaFederal() != null && pf.getSituacaoPessoaOrgao() != null) {
c.createCriteria("situacaoPessoaReceitaFederal").add(
Restrictions.idEq(pf.getSituacaoPessoaReceitaFederal().getId()));
}
if (pf.getDataEmissao() != null) {
c.add(Restrictions.eq("dataEmissao", pf.getDataEmissao()));
}
if (pf.getDataNascimento() != null) {
c.add(Restrictions.eq("dataNascimento", pf.getDataNascimento()));
}
if (pf.getDataSituacaoCadastral() != null) {
c.add(Restrictions.eq("dataSituacaoCadastral", pf.getDataSituacaoCadastral()));
}
if (pf.getMunicipio() != null && !"".equals(pf.getMunicipio().getId())) {
c.createCriteria("municipio").add(Restrictions.idEq(pf.getMunicipio().getId()));
}
if (pf.getNome() != null && !"".equals(pf.getNome())) {
c.add(Restrictions.ilike("nome", "%" + pf.getNome().trim() + "%"));
}
if (pf.getNomeMae() != null && !"".equals(pf.getNomeMae())) {
c.add(Restrictions.ilike("nomeMae", "%" + pf.getNomeMae() + "%"));
}
if (pf.getNomePai() != null && !"".equals(pf.getNomePai())) {
c.add(Restrictions.ilike("nomePai", "%" + pf.getNomePai() + "%"));
}
if (pf.getPais() != null && pf.getPais().getId() != null) {
c.createCriteria("pais").add(Restrictions.idEq(pf.getPais().getId()));
}
if (pf.getSexo() != null && !"".equals(pf.getSexo())) {
c.add(Restrictions.eq("sexo", pf.getSexo()));
}
if (pf.getCorRaca() != null && pf.getCorRaca().getId() != null){
c.createCriteria("corRaca").add(Restrictions.idEq(pf.getCorRaca().getId()));
}
if (pf.getDocumentos() != null && pf.getDocumentos().size() > 0) {
Collection<Integer> ids = new ArrayList<Integer>();
for (CrpDocumentoPessoaFisica d : pf.getDocumentos()) {
Criteria documento = getCurrentSession().createCriteria(CrpDocumentoPessoaFisica.class);
if (d.getId() != null)
documento.add(Restrictions.idEq(d.getId()));
if (d.getDataEmissao() != null)
documento.add(Restrictions.eq("dataEmissao", d.getDataEmissao()));
if (d.getNumero() != null && !"".equals(d.getNumero()))
documento.add(Restrictions.eq("numero", d.getNumero()));
if (d.getOrgaoEmissor() != null && !"".equals(d.getOrgaoEmissor()))
documento.add(Restrictions.eq("orgaoEmissor", d.getOrgaoEmissor()));
Collection<CrpDocumentoPessoaFisica> documentos = listByExample(documento);
if (documentos != null && documentos.size() > 0) {
for (CrpDocumentoPessoaFisica doc : documentos) {
ids.add(doc.getPessoaFisica().getId());
}
}
}
if (ids != null && ids.size() > 0) {
c.add(Restrictions.in("id", ids));
} else {
return null;
}
}
return listByExample(c);
}
return getAll(pf.getClass());
}
}