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.controller.managedbean;
2
 
3
import java.io.Serializable;
4
import java.util.ArrayList;
5
import java.util.List;
6
 
7
import javax.inject.Inject;
8
import javax.inject.Named;
9
 
10
import org.springframework.context.annotation.Scope;
11
 
195 espaco 12
import br.com.ec.core.generic.GenericService;
13
import br.com.ec.core.util.DataUtils;
14
import br.com.ec.core.util.VerificadorUtil;
686 blopes 15
import br.com.ec.domain.dto.CashbackDTO;
106 espaco 16
import br.com.ec.domain.model.Cliente;
17
import br.com.ec.domain.model.Pedido;
18
import br.com.ec.domain.model.tipos.TipoSexo;
19
import br.com.ec.domain.service.cliente.ClienteService;
195 espaco 20
import br.com.ec.web.exception.VerificadorLancamentoException;
21
import br.com.ec.web.exception.VerificadorLancamentoException.CommandBean;
22
import br.com.ec.web.generic.AbstractBean;
106 espaco 23
 
24
@Named
25
@Scope("view")
26
public class ClienteBean extends AbstractBean<Cliente> implements Serializable {
27
 
28
        private static final long serialVersionUID = 1L;
29
 
30
        private ClienteService clienteService;
31
 
32
        private Cliente clienteSelecionado;
33
        private String cpfCnpjCliente;
34
        private String contatoCliente;
35
 
36
        private List<Pedido> pedidos;
37
        private Pedido pedidoSelecionado;
38
 
39
        private Boolean indicadorCpfCnpjInvalido;
40
 
41
        @Inject
42
        public ClienteBean(ClienteService clienteService) {
43
                this.clienteService = clienteService;
44
        }
45
 
46
        @Override
47
        public void preCarregamento() {
48
                setIndicadorCpfCnpjInvalido(false);
49
                entidade = new Cliente();
50
                entidade.setAtivo(true);
51
        }
52
 
53
        @Override
54
        public void limparEntidade() {
55
                setEntidade(new Cliente());
56
                setPedidos(new ArrayList<Pedido>());
57
        }
58
 
59
        @Override
60
        public GenericService<Cliente> getService() {
61
                return clienteService;
62
        }
63
 
64
        @Override
65
        public Cliente getEntidade() {
66
                return entidade;
67
        }
68
 
69
        @Override
70
        public Cliente getId() {
71
                return getEntidade();
72
        }
73
 
74
        @Override
75
        public void preDetalhar(Cliente cliente) {
76
                super.preDetalhar(clienteService.detalharCliente(cliente));
77
        }
78
 
79
        @Override
80
        public void preAlterar(Cliente cliente) {
81
                super.preAlterar(clienteService.detalharCliente(cliente));
82
        }
83
 
84
        public Cliente getClienteSelecionado() {
85
                return clienteSelecionado;
86
        }
87
        public void setClienteSelecionado(Cliente clienteSelecionado) {
88
                this.clienteSelecionado = clienteSelecionado;
89
        }
90
 
91
        public String getCpfCnpjCliente() {
92
                return VerificadorUtil.naoEstaNulo(cpfCnpjCliente)? cpfCnpjCliente.replace(".", "").replace("-", "").replace("/", "") : cpfCnpjCliente;
93
        }
94
        public void setCpfCnpjCliente(String cpfCnpjCliente) {
95
                this.cpfCnpjCliente = cpfCnpjCliente;
96
        }
97
 
98
        public String getContatoCliente() {
99
                return contatoCliente;
100
        }
101
        public void setContatoCliente(String contatoCliente) {
102
                this.contatoCliente = contatoCliente;
103
        }
104
 
105
        public List<Pedido> getPedidos() {
106
                return pedidos;
107
        }
108
        public void setPedidos(List<Pedido> pedidos) {
109
                this.pedidos = pedidos;
110
        }
111
 
112
        public Pedido getPedidoSelecionado() {
113
                return pedidoSelecionado;
114
        }
115
        public void setPedidoSelecionado(Pedido pedidoSelecionado) {
116
                this.pedidoSelecionado = pedidoSelecionado;
117
        }
118
 
119
        public Boolean getIndicadorCpfCnpjInvalido() {
120
                return indicadorCpfCnpjInvalido;
121
        }
122
        public void setIndicadorCpfCnpjInvalido(Boolean indicadorCpfCnpjInvalido) {
123
                this.indicadorCpfCnpjInvalido = indicadorCpfCnpjInvalido;
124
        }
125
 
126
        /***************************************************************/
127
 
128
        public List<Cliente> getConsultarTodas() {
129
                return clienteService.consultarTodos(new Cliente());
130
        }
131
 
132
        public TipoSexo[] getTiposSexo() {
133
                return TipoSexo.values();
134
        }
135
 
136
        public void verificarCpfCnpj() {
137
                new VerificadorLancamentoException().tratarIhRelancarExcecaoSemLimparEntidade(new CommandBean() {
138
                        public void execute() {
139
                                setClienteSelecionado(null);
140
                                setIndicadorCpfCnpjInvalido(false);
141
                                Cliente clienteConsulta = null;
142
                                if (VerificadorUtil.naoEstaNuloOuVazio(getCpfCnpjCliente())) {
143
                                        clienteConsulta = new Cliente();
144
                                        clienteConsulta.setCpfCnpj(getCpfCnpjCliente());
145
                                        setIndicadorCpfCnpjInvalido(!clienteConsulta.cpfCnpjEhValido());
146
                                }
147
                                clienteConsulta = clienteService.consultarClientePorCpfCnpjOuContato(getCpfCnpjCliente(), getContatoCliente());
148
                                if (VerificadorUtil.estaNulo(clienteConsulta)) {
149
                                        clienteConsulta = new Cliente();
150
                                        clienteConsulta.setDataCadastro(DataUtils.getDataAtual());
151
                                        clienteConsulta.setCpfCnpj(getCpfCnpjCliente());
152
                                }
153
                                setClienteSelecionado(clienteConsulta);
154
                        }
155
                });
156
        }
157
 
158
        public void limparCliente() {
159
                setClienteSelecionado(null);
160
                setCpfCnpjCliente("");
161
        }
162
 
163
        /*
164
        public void selecionarCliente(final Cliente cliente) {
165
                new VerificadorLancamentoException().tratarIhRelancarExcecaoSemLimparEntidade(new CommandBean() {
166
                        public void execute() {
167
                                cliente.setAtivo(true);
168
                                clienteService.alterar(cliente);
169
                                setClienteSelecionado(cliente);
170
                                setCpfCliente(null);
171
                                adicionandoParametroArgsConfirmandoAcao(true);
172
                        }
173
                });
174
        }
175
        */
176
 
177
}