Subversion Repositories Integrator Subversion

Rev

Rev 195 | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
106 espaco 1
package br.com.ec.domain.service.pendencia.impl;
2
 
3
import java.util.Date;
160 espaco 4
import java.util.List;
106 espaco 5
 
6
import org.springframework.beans.factory.annotation.Autowired;
7
import org.springframework.stereotype.Service;
8
 
195 espaco 9
import br.com.ec.core.generic.AbstractService;
10
import br.com.ec.core.generic.GenericRepository;
11
import br.com.ec.core.util.DataUtils;
12
import br.com.ec.core.validador.Validador;
160 espaco 13
import br.com.ec.domain.dto.PendenciaDTO;
106 espaco 14
import br.com.ec.domain.model.Loja;
15
import br.com.ec.domain.model.Pendencia;
16
import br.com.ec.domain.model.Perfil;
160 espaco 17
import br.com.ec.domain.model.Usuario;
106 espaco 18
import br.com.ec.domain.service.pendencia.PendenciaService;
19
import br.com.ec.infrastructure.repository.PendenciaRepository;
20
 
21
@Service
22
public class PendenciaServiceImpl extends AbstractService<Pendencia> implements PendenciaService {
23
 
24
        private PendenciaRepository pendenciaRepository;
25
 
26
        @Autowired
27
        public PendenciaServiceImpl(Validador validador, PendenciaRepository pendenciaRepository) {
28
                super(validador);
29
                this.pendenciaRepository = pendenciaRepository;
30
        }
31
 
32
        @Override
33
        protected GenericRepository<Pendencia> getRepository() {
34
                return pendenciaRepository;
35
        }
36
 
37
        @Override
38
        protected void regrasNegocioCadastrar(Pendencia pendencia) {
39
                pendencia.setData(DataUtils.getDataAtual());
40
                pendencia.setIndicadorFinalizado(false);
41
        }
42
 
43
        @Override
44
        public Integer quantidadePendenciasNaoFinalizadas(Loja loja) {
45
                Pendencia pendencia = new Pendencia();
46
                pendencia.setLoja(loja);
47
                pendencia.setIndicadorFinalizado(false);
48
                return this.obterQuantidadeDeRegistrosPassandoEntidade(pendencia);
49
        }
50
 
51
        @Override
52
        public Integer obterQuantidadePendenciasNaoFinalizadasPorLojaPerfilEePeriodo(Loja loja, Perfil perfil, Date dataInicial, Date dataFinal) {
53
                return pendenciaRepository.obterQuantidadePendenciasNaoFinalizadasPorLojaPerfilEePeriodo(loja, perfil, dataInicial, dataFinal);
54
        }
160 espaco 55
 
56
        @Override
161 espaco 57
        public Integer obterQuantidadePendenciasRespondidasNaoLidas(Usuario solicitante, Date dataFinalizado) {
58
                return pendenciaRepository.obterQuantidadePendenciasRespondidasNaoLidas(solicitante, dataFinalizado);
160 espaco 59
        }
106 espaco 60
 
160 espaco 61
        @Override
62
        public List<PendenciaDTO> consultarUltimasPendenciasAtendidas(Pendencia pendencia) {
63
                return pendenciaRepository.consultarUltimasPendenciasAtendidas(pendencia);
64
        }
65
 
161 espaco 66
        @Override
240 espaco 67
        public List<PendenciaDTO> consultarPendenciasNaoLidas(Pendencia pendencia) {
68
                return pendenciaRepository.consultarPendenciasNaoLidas(pendencia);
69
        }
70
 
71
        @Override
161 espaco 72
        public void lerRepostaPendencia(Long sequencialPendencia) {
73
                pendenciaRepository.lerRepostaPendencia(sequencialPendencia);
74
        }
75
 
106 espaco 76
}