Subversion Repositories Integrator Subversion

Rev

Rev 259 | Go to most recent revision | Details | Last modification | View Log | RSS feed

Rev Author Line No. Line
229 espaco 1
package br.com.ec.repository.jpa;
2
 
3
import java.util.List;
4
 
5
import org.springframework.stereotype.Repository;
6
 
7
import br.com.ec.domain.dto.LojaDTO;
8
import br.com.ec.domain.modal.Loja;
9
import br.com.ec.repository.LojaRepository;
10
import br.com.ec.repository.SistemaAbstractRepository;
11
 
12
@Repository
13
public class LojaRepositoryJpaImpl extends SistemaAbstractRepository<Loja> implements LojaRepository {
14
 
15
        @Override
16
        protected String getColunaOrdenadora() {
17
                return "ordenador, descricao";
18
        }
19
 
20
        @Override
21
        public List<LojaDTO> consultarLojasAtivas() {
22
                StringBuilder jpql = new StringBuilder();
23
                jpql.append("SELECT new br.com.ec.domain.dto.LojaDTO(l.sequencial, l.descricao) FROM Loja l ");
24
                jpql.append("WHERE l.ativo = TRUE ");
25
                jpql.append("ORDER BY l.ordenador ");
26
                try {
27
                        return getEntityManager().createQuery(jpql.toString(), LojaDTO.class).getResultList();
28
                } catch (Exception ex) {
29
                        ex.printStackTrace();
30
                }
31
                return null;
32
        }
33
 
34
        /*
35
        @Override
36
        protected void setarStringParametrosConsultar(StringBuilder sql, Loja loja) {
37
                if (VerificadorUtil.naoEstaNuloOuVazio(loja)) {
38
                        if (VerificadorUtil.naoEstaNuloOuVazio(loja.getAtivo())) {
39
                                sql.append("AND e.ativo = :ativo ");
40
                        }
41
                }
42
        }
43
 
44
        @Override
45
        protected void setarQueryParametrosConsultar(Query query, Loja loja) {
46
                if (VerificadorUtil.naoEstaNuloOuVazio(loja)) {
47
                        if (VerificadorUtil.naoEstaNulo(loja.getAtivo())) {
48
                                query.setParameter("ativo", loja.getAtivo());
49
                        }
50
                }
51
        }
52
 
53
        @Override
54
        protected void setarStringParametrosConsulta(StringBuilder sql, ParametrosConsulta<Loja> parametros) {
55
                if (VerificadorUtil.naoEstaNuloOuVazio(parametros.getEntidade())) {
56
                        if (VerificadorUtil.naoEstaNuloOuVazio(parametros.getEntidade().getAtivo())) {
57
                                sql.append("AND e.ativo = :ativo ");
58
                        }
59
                }
60
        }
61
 
62
        @Override
63
        protected void setarQueryParametrosConsulta(Query query, ParametrosConsulta<Loja> parametros) {
64
                if (VerificadorUtil.naoEstaNuloOuVazio(parametros.getEntidade())) {
65
                        if (VerificadorUtil.naoEstaNulo(parametros.getEntidade().getAtivo())) {
66
                                query.setParameter("ativo", parametros.getEntidade().getAtivo());
67
                        }
68
                }
69
        }
70
 
71
        @Override
72
        public Loja consultarPorId(Loja loja) {
73
                return getEntityManager().find(Loja.class, loja.getSequencial());
74
        }
75
 
76
        @Override
77
        public List<Loja> consultarLojas(Boolean ativo) {
78
                StringBuilder jpql = new StringBuilder();
79
                try {
80
                        jpql.append("SELECT DISTINCT l FROM Loja l ");
81
                        jpql.append("WHERE 1=1 ");
82
                        if (VerificadorUtil.naoEstaNulo(ativo)) {
83
                                jpql.append("AND l.ativo = :ativo ");
84
                        }
85
                        jpql.append("ORDER BY l.ordenador, l.descricao");
86
                        TypedQuery<Loja> query = getEntityManager().createQuery(jpql.toString(), Loja.class);
87
                        if (VerificadorUtil.naoEstaNulo(ativo)) {
88
                                query.setParameter("ativo", ativo);
89
                        }
90
                        return query.getResultList();
91
                } catch (NoResultException e) {
92
                        return null;
93
                }
94
        }
95
 
96
        @Override
97
        public List<Loja> consultarLojasComDetalhe() {
98
                StringBuilder jpql = new StringBuilder();
99
                try {
100
                        jpql.append("SELECT DISTINCT l FROM Loja l ");
101
                        jpql.append("LEFT JOIN FETCH l.pessoaJuridica pj ");
102
                        jpql.append("LEFT JOIN FETCH pj.enderecos e ");
103
                        jpql.append("LEFT JOIN FETCH pj.dadosBancarios b ");
104
                        jpql.append("ORDER BY l.ordenador, l.descricao");
105
                        return getEntityManager().createQuery(jpql.toString(), Loja.class).getResultList();
106
                } catch (NoResultException e) {
107
                        return null;
108
                }
109
        }
110
 
111
        @Override
112
        public List<LojaDTO> consultarLojasDTO(Boolean ativo) {
113
                StringBuilder jpql = new StringBuilder();
114
                try {
115
                        jpql.append("SELECT new br.com.ec.domain.dto.LojaDTO(l.sequencial, l.descricao) FROM Loja l ");
116
                        jpql.append("WHERE 1=1 ");
117
                        if (VerificadorUtil.naoEstaNulo(ativo)) {
118
                                jpql.append("AND l.ativo = :ativo ");
119
                        }
120
                        jpql.append("ORDER BY l.ordenador, l.descricao ");
121
                        TypedQuery<LojaDTO> query = getEntityManager().createQuery(jpql.toString(), LojaDTO.class);
122
                        if (VerificadorUtil.naoEstaNulo(ativo)) {
123
                                query.setParameter("ativo", ativo);
124
                        }
125
                        return query.getResultList();
126
                } catch (NoResultException e) {
127
                        return null;
128
                }
129
        }
130
        */
131
}