Subversion Repositories Integrator Subversion

Rev

Rev 259 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 259 Rev 268
Line 1... Line 1...
1
package br.com.ec.repository.jpa;
1
package br.com.ec.repository.jpa;
-
 
2
-
 
3
import java.util.ArrayList;
-
 
4
import java.util.List;
2
5
3
import javax.persistence.NoResultException;
6
import javax.persistence.NoResultException;
-
 
7
import javax.persistence.TypedQuery;
4
8
5
import org.springframework.stereotype.Repository;
9
import org.springframework.stereotype.Repository;
6
10
-
 
11
import br.com.ec.core.util.VerificadorUtil;
7
import br.com.ec.domain.dto.VendedorDTO;
12
import br.com.ec.domain.dto.VendedorDTO;
8
import br.com.ec.domain.model.Vendedor;
13
import br.com.ec.domain.model.Vendedor;
9
import br.com.ec.repository.SistemaAbstractRepository;
14
import br.com.ec.repository.SistemaAbstractRepository;
10
import br.com.ec.repository.VendedorRepository;
15
import br.com.ec.repository.VendedorRepository;
11
16
Line 65... Line 70...
65
        }
70
        }
66
        */
71
        */
67
        @Override
72
        @Override
68
        public VendedorDTO consultarVendedorPorPessoa(Long sequencialPessoa) {
73
        public VendedorDTO consultarVendedorPorPessoa(Long sequencialPessoa) {
69
                StringBuilder jpql = new StringBuilder();
74
                StringBuilder jpql = new StringBuilder();
70
                jpql.append("SELECT new br.com.ec.domain.dto.VendedorDTO(v.sequencial, v.nome, v.loja.sequencial, v.loja.descricao) ");
-
 
-
 
75
                jpql.append("SELECT new br.com.ec.domain.dto.VendedorDTO(v.sequencial, v.pessoa.sequencial, v.nome, v.loja.sequencial, v.loja.descricao) ");
71
                jpql.append("FROM Vendedor v ");
76
                jpql.append("FROM Vendedor v ");
72
                jpql.append("WHERE v.pessoa.sequencial = :sequencialPessoa");
77
                jpql.append("WHERE v.pessoa.sequencial = :sequencialPessoa");
73
                try {
78
                try {
74
                        return getEntityManager().createQuery(jpql.toString(), VendedorDTO.class)
79
                        return getEntityManager().createQuery(jpql.toString(), VendedorDTO.class)
75
                                        .setParameter("sequencialPessoa", sequencialPessoa)
80
                                        .setParameter("sequencialPessoa", sequencialPessoa)
76
                                        .getSingleResult();
81
                                        .getSingleResult();
77
                } catch (NoResultException nre) {
82
                } catch (NoResultException nre) {
78
                        throw new RuntimeException(VENDEDOR_INFORMADO_NAO_EXISTE_PARA_ESTA_PESSOA);
83
                        throw new RuntimeException(VENDEDOR_INFORMADO_NAO_EXISTE_PARA_ESTA_PESSOA);
-
 
84
                }
-
 
85
        }
-
 
86
       
-
 
87
        @Override
-
 
88
        public List<VendedorDTO> consultarVendedoresColaboradores() {
-
 
89
                return consultarVendedoresColaboradores(null);
-
 
90
        }
-
 
91
       
-
 
92
        private List<VendedorDTO> consultarVendedoresColaboradores(Boolean indicadorAtivo) {
-
 
93
                StringBuilder jpql = new StringBuilder();
-
 
94
                jpql.append("SELECT new br.com.ec.domain.dto.VendedorDTO(v.sequencial, v.pessoa.sequencial, v.nome, v.loja.sequencial, v.loja.descricao) ");
-
 
95
                jpql.append("FROM Vendedor v ");
-
 
96
                jpql.append("WHERE v.indicadorColaborador = true ");
-
 
97
                if (VerificadorUtil.naoEstaNulo(indicadorAtivo)) {
-
 
98
                        jpql.append("AND v.ativo = :indicadorAtivo ");
-
 
99
                }
-
 
100
                try {
-
 
101
                        TypedQuery<VendedorDTO> query = (TypedQuery<VendedorDTO>) getEntityManager().createQuery(jpql.toString(), VendedorDTO.class);
-
 
102
                        if (VerificadorUtil.naoEstaNulo(indicadorAtivo)) {
-
 
103
                                query.setParameter("indicadorAtivo", indicadorAtivo);
-
 
104
                        }
-
 
105
                        return query.getResultList();
-
 
106
                } catch (NoResultException re) {
-
 
107
                        return new ArrayList<VendedorDTO>();
79
                }
108
                }
80
        }
109
        }
81
       
110
       
82
}
111
}