Subversion Repositories Integrator Subversion

Rev

Rev 160 | Go to most recent revision | Details | 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;
4
 
5
import org.springframework.beans.factory.annotation.Autowired;
6
import org.springframework.stereotype.Service;
7
 
8
import br.com.ec.domain.model.Loja;
9
import br.com.ec.domain.model.Pendencia;
10
import br.com.ec.domain.model.Perfil;
11
import br.com.ec.domain.service.pendencia.PendenciaService;
12
import br.com.ec.infrastructure.repository.PendenciaRepository;
13
import br.edu.cesmac.core.generic.AbstractService;
14
import br.edu.cesmac.core.generic.GenericRepository;
15
import br.edu.cesmac.core.util.DataUtils;
16
import br.edu.cesmac.core.validador.Validador;
17
 
18
@Service
19
public class PendenciaServiceImpl extends AbstractService<Pendencia> implements PendenciaService {
20
 
21
        private PendenciaRepository pendenciaRepository;
22
 
23
        @Autowired
24
        public PendenciaServiceImpl(Validador validador, PendenciaRepository pendenciaRepository) {
25
                super(validador);
26
                this.pendenciaRepository = pendenciaRepository;
27
        }
28
 
29
        @Override
30
        protected GenericRepository<Pendencia> getRepository() {
31
                return pendenciaRepository;
32
        }
33
 
34
        @Override
35
        protected void regrasNegocioCadastrar(Pendencia pendencia) {
36
                pendencia.setData(DataUtils.getDataAtual());
37
                pendencia.setIndicadorFinalizado(false);
38
        }
39
 
40
        @Override
41
        public Integer quantidadePendenciasNaoFinalizadas(Loja loja) {
42
                Pendencia pendencia = new Pendencia();
43
                pendencia.setLoja(loja);
44
                pendencia.setIndicadorFinalizado(false);
45
                return this.obterQuantidadeDeRegistrosPassandoEntidade(pendencia);
46
        }
47
 
48
        @Override
49
        public Integer obterQuantidadePendenciasNaoFinalizadasPorLojaPerfilEePeriodo(Loja loja, Perfil perfil, Date dataInicial, Date dataFinal) {
50
                return pendenciaRepository.obterQuantidadePendenciasNaoFinalizadasPorLojaPerfilEePeriodo(loja, perfil, dataInicial, dataFinal);
51
        }
52
 
53
}