Subversion Repositories Integrator Subversion

Rev

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

Rev Author Line No. Line
760 blopes 1
package br.com.sl.domain.service.impl;
2
 
783 blopes 3
import java.util.ArrayList;
4
import java.util.List;
5
 
760 blopes 6
import org.springframework.beans.factory.annotation.Autowired;
7
import org.springframework.stereotype.Service;
8
 
9
import br.com.ec.core.generic.AbstractService;
10
import br.com.ec.core.generic.GenericRepository;
783 blopes 11
import br.com.ec.core.util.VerificadorUtil;
760 blopes 12
import br.com.ec.core.validador.Validador;
13
import br.com.sl.domain.model.Ativo;
783 blopes 14
import br.com.sl.domain.model.Candle;
760 blopes 15
import br.com.sl.domain.service.AtivoService;
16
import br.com.sl.repository.AtivoRepository;
17
 
18
@Service
19
public class AtivoServiceImpl extends AbstractService<Ativo> implements AtivoService {
20
 
21
        private AtivoRepository ativoRepository;
22
 
23
        @Autowired
24
        public AtivoServiceImpl(AtivoRepository ativoRepository, Validador validador) {
25
                super(validador);
26
                this.ativoRepository = ativoRepository;
27
        }
28
 
29
        @Override
30
        protected GenericRepository<Ativo> getRepository() {
31
                return this.ativoRepository;
32
        }
33
 
34
        @Override
35
        public Ativo consultarPorDescricao(String descricaoAtivo) {
762 blopes 36
                return ativoRepository.consultarPorNome(descricaoAtivo);
760 blopes 37
        }
38
 
783 blopes 39
        @Override
40
        public List<Ativo> preencherCandlesComAtivosRetornandoAtivosUtilizados(List<Candle> candles) {
41
                List<Ativo> ativosEmAnalise = new ArrayList<Ativo>();
42
                List<Ativo> ativosCadastrados = this.consultarTodos(new Ativo());
43
                for (Candle candle : candles) {
44
                        Ativo ativoEmAnalise = retornarAtivoConstaNaLista(ativosCadastrados, candle.getNomeAtivo());
45
                        if (VerificadorUtil.naoEstaNulo(ativoEmAnalise)) {
46
                                if (!ativosEmAnalise.contains(ativoEmAnalise)) {
47
                                        ativosEmAnalise.add(ativoEmAnalise);
48
                                }
49
                                candle.setAtivo(ativoEmAnalise);
50
                        }
51
            }
52
                return ativosEmAnalise;
53
        }
54
 
55
        private Ativo retornarAtivoConstaNaLista(List<Ativo> ativos, String nomeAtivo) {
56
                for (Ativo ativo : ativos) {
57
                        if (ativo.getNome().equals(nomeAtivo)) {
58
                                return ativo;
59
                        }
60
                }
61
                return null;
62
        }
63
 
760 blopes 64
}