Subversion Repositories Integrator Subversion

Rev

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

Rev 302 Rev 303
Line 1... Line 1...
1
package br.com.ec.domain.service.impl;
1
package br.com.ec.domain.service.impl;
2
2
3
import java.util.ArrayList;
-
 
4
import java.util.List;
3
import java.util.List;
5
4
6
import org.primefaces.event.FlowEvent;
5
import org.primefaces.event.FlowEvent;
7
import org.springframework.beans.factory.annotation.Autowired;
6
import org.springframework.beans.factory.annotation.Autowired;
8
import org.springframework.stereotype.Service;
7
import org.springframework.stereotype.Service;
9
8
10
import br.com.ec.core.exception.NegocioException;
9
import br.com.ec.core.exception.NegocioException;
11
import br.com.ec.core.generic.AbstractService;
10
import br.com.ec.core.generic.AbstractService;
12
import br.com.ec.core.generic.GenericRepository;
11
import br.com.ec.core.generic.GenericRepository;
-
 
12
import br.com.ec.core.util.StringUtil;
13
import br.com.ec.core.util.VerificadorUtil;
13
import br.com.ec.core.util.VerificadorUtil;
14
import br.com.ec.core.validador.Validador;
14
import br.com.ec.core.validador.Validador;
15
import br.com.ec.domain.dto.PessoaDTO;
15
import br.com.ec.domain.dto.PessoaDTO;
16
import br.com.ec.domain.model.Endereco;
16
import br.com.ec.domain.model.Endereco;
-
 
17
import br.com.ec.domain.model.Funcionario;
17
import br.com.ec.domain.model.Pessoa;
18
import br.com.ec.domain.model.Pessoa;
-
 
19
import br.com.ec.domain.model.tipos.TipoComissionamento;
18
import br.com.ec.domain.service.FuncionarioService;
20
import br.com.ec.domain.service.FuncionarioService;
19
import br.com.ec.domain.service.PessoaService;
21
import br.com.ec.domain.service.PessoaService;
20
import br.com.ec.repository.PessoaRepository;
22
import br.com.ec.repository.PessoaRepository;
21
23
22
@Service
24
@Service
Line 54... Line 56...
54
        public Pessoa consultarPessoaPorCpfOuCpnj(String cpfCnpj) {
56
        public Pessoa consultarPessoaPorCpfOuCpnj(String cpfCnpj) {
55
                return pessoaRepository.consultarPessoaPorCpfOuCpnj(cpfCnpj);
57
                return pessoaRepository.consultarPessoaPorCpfOuCpnj(cpfCnpj);
56
        }
58
        }
57
       
59
       
58
        @Override
60
        @Override
59
        public Pessoa cadastroExterno(FlowEvent evento, Pessoa pessoa, Endereco endereco) {
-
 
-
 
61
        public Pessoa cadastroExterno(FlowEvent evento, Pessoa pessoa, Funcionario funcionario, Endereco endereco) {
60
                if (VerificadorUtil.estaNulo(evento)) {
62
                if (VerificadorUtil.estaNulo(evento)) {
61
                        Pessoa pessoaConsultada = consultarPessoaPorCpfOuCpnj(pessoa.getCpfCnpj());
-
 
-
 
63
                        Pessoa pessoaConsultada = consultarPessoaPorCpfOuCpnj(StringUtil.retornarApenasNumeros(pessoa.getCpfCnpj()));
62
                        if (VerificadorUtil.estaNulo(pessoaConsultada)) {
64
                        if (VerificadorUtil.estaNulo(pessoaConsultada)) {
63
                                pessoa.setCadastroFinalizado(false);
65
                                pessoa.setCadastroFinalizado(false);
64
                                pessoa.setOptantePeloFGTS(true);
-
 
65
                                this.cadastrar(pessoa);
66
                                this.cadastrar(pessoa);
-
 
67
                                Funcionario funcionarioNovo = new Funcionario(pessoa, TipoComissionamento.COMISSSIONAMENTO_ESPACO_CASE.getValor(), true);
-
 
68
                                funcionarioService.cadastrar(funcionarioNovo);
-
 
69
                                pessoa.setFuncionario(funcionarioNovo);
66
                                return pessoa;
70
                                return pessoa;
-
 
71
                        }
-
 
72
                        Funcionario funcionarioPessoa = funcionarioService.consultarFuncionarioPelaPessoa(pessoa.getSequencial());
-
 
73
                        if (VerificadorUtil.estaNulo(funcionarioPessoa)) {
-
 
74
                                Funcionario funcionarioNovo = new Funcionario(pessoaConsultada, TipoComissionamento.COMISSSIONAMENTO_ESPACO_CASE.getValor(), true);
-
 
75
                                funcionarioService.cadastrar(funcionarioNovo);
-
 
76
                                pessoaConsultada.setFuncionario(funcionarioNovo);
-
 
77
                        } else {
-
 
78
                                pessoaConsultada.setFuncionario(funcionarioPessoa);
67
                        }
79
                        }
68
                        if (pessoaConsultada.getCadastroFinalizado()) {
80
                        if (pessoaConsultada.getCadastroFinalizado()) {
69
                                throw new NegocioException("CADASTRO INDISPONÍVEL");
81
                                throw new NegocioException("CADASTRO INDISPONÍVEL");
70
                        }
82
                        }
71
                        return pessoaConsultada;
83
                        return pessoaConsultada;
Line 74... Line 86...
74
                        if (VerificadorUtil.naoEstaNuloOuVazio(endereco.getCep())) {
86
                        if (VerificadorUtil.naoEstaNuloOuVazio(endereco.getCep())) {
75
                                pessoa.atualizarEndereco(endereco);
87
                                pessoa.atualizarEndereco(endereco);
76
                        }
88
                        }
77
                }
89
                }
78
                this.alterar(pessoa);
90
                this.alterar(pessoa);
79
                return detalharPessoa(pessoa.getSequencial());
-
 
-
 
91
                funcionario.setPessoa(pessoa);
-
 
92
                funcionarioService.alterar(funcionario);
-
 
93
                pessoa = detalharPessoa(pessoa.getSequencial());
-
 
94
                pessoa.setFuncionario(funcionarioService.consultarFuncionarioPelaPessoa(pessoa.getSequencial()));
-
 
95
                return pessoa;
80
        }
96
        }
81
       
97
       
82
        @Override
98
        @Override
83
        public Pessoa detalharPessoa(Long sequencialPessoa) {
99
        public Pessoa detalharPessoa(Long sequencialPessoa) {
84
                return pessoaRepository.detalharPessoa(sequencialPessoa);
100
                return pessoaRepository.detalharPessoa(sequencialPessoa);