Subversion Repositories Integrator Subversion

Rev

Rev 106 | Go to most recent revision | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
106 espaco 1
 
2
package br.com.ec.controller.managedbean;
3
 
4
import java.io.Serializable;
5
import java.util.ArrayList;
6
import java.util.HashMap;
7
import java.util.List;
8
 
9
import javax.inject.Inject;
10
import javax.inject.Named;
11
 
12
import org.springframework.context.annotation.Scope;
13
 
195 espaco 14
import br.com.ec.core.generic.GenericService;
15
import br.com.ec.core.util.DataUtils;
16
import br.com.ec.core.util.VerificadorUtil;
106 espaco 17
import br.com.ec.domain.dto.ParametrosConsultaPedidoCompraDTO;
18
import br.com.ec.domain.dto.PedidosResumoDTO;
19
import br.com.ec.domain.dto.ProdutoPedidoCompraExtrairDTO;
20
import br.com.ec.domain.model.Fornecedor;
21
import br.com.ec.domain.model.FornecedorProduto;
22
import br.com.ec.domain.model.Loja;
23
import br.com.ec.domain.model.Produto;
24
import br.com.ec.domain.model.ProdutoPedidoCompra;
25
import br.com.ec.domain.model.tipos.TipoStatusPedidoCompra;
26
import br.com.ec.domain.service.fornecedor.FornecedorService;
27
import br.com.ec.domain.service.fornecedorproduto.FornecedorProdutoService;
28
import br.com.ec.domain.service.produto.ProdutoService;
29
import br.com.ec.domain.service.produtodaloja.ProdutoLojaService;
30
import br.com.ec.domain.service.produtopedidocompra.ProdutoPedidoCompraService;
31
import br.com.ec.domain.service.seguranca.ContextoSeguranca;
195 espaco 32
import br.com.ec.web.exception.VerificadorLancamentoException;
33
import br.com.ec.web.exception.VerificadorLancamentoException.CommandBean;
34
import br.com.ec.web.generic.AbstractBean;
35
import br.com.ec.web.message.LancadorMensagem;
106 espaco 36
 
37
@Named
38
@Scope("view")
39
public class ProdutoPedidoCompraBean extends AbstractBean<ProdutoPedidoCompra> implements Serializable {
40
 
41
        private static final long serialVersionUID = 1L;
42
 
43
        private List<ProdutoPedidoCompra> produtoPedidoCompras;
44
 
45
        private ProdutoPedidoCompraService produtoPedidoCompraService;
46
        private FornecedorProdutoService fornecedorProdutoService;
47
        private FornecedorService fornecedorService;
48
        private ProdutoService produtoService;
49
        private ProdutoLojaService produtoLojaService;
50
        private ContextoSeguranca contextoSeguranca;
51
 
52
        private ProdutoPedidoCompra produtoPedidoCompraSelecionado;
53
 
54
        private ProdutoPedidoCompraExtrairDTO produtoPedidoCompraExtrairDTO;
55
        private String pedidoEmTexto;
56
 
57
        private Loja lojaAlteracao;
58
        private Fornecedor fornecedorAlteracao;
59
        private String statusAlteracao;
60
 
61
        private List<PedidosResumoDTO> resumoPedidos;
62
 
63
        @Inject
64
        public ProdutoPedidoCompraBean(ProdutoPedidoCompraService produtoPedidoCompraService, FornecedorProdutoService fornecedorProdutoService,
65
                        FornecedorService fornecedorService, ProdutoService produtoService, ProdutoLojaService produtoLojaService, ContextoSeguranca contextoSeguranca) {
66
                this.produtoPedidoCompraService = produtoPedidoCompraService;
67
                this.fornecedorProdutoService = fornecedorProdutoService;
68
                this.fornecedorService = fornecedorService;
69
                this.produtoService = produtoService;
70
                this.produtoLojaService = produtoLojaService;
71
                this.contextoSeguranca = contextoSeguranca;
72
        }
73
 
74
        @Override
75
        public void preCarregamento() {
76
                entidade = new ProdutoPedidoCompra();
77
                entidade.setProduto(new Produto());
78
                parametrosConsulta = new ParametrosConsultaPedidoCompraDTO();
79
                parametrosConsulta.setEntidade(entidade);
80
        }
81
 
82
        @Override
83
        public void limparEntidade() {
84
                setEntidade(new ProdutoPedidoCompra());
85
        }
86
 
87
        @Override
88
        public GenericService<ProdutoPedidoCompra> getService() {
89
                return produtoPedidoCompraService;
90
        }
91
 
92
        @Override
93
        public ProdutoPedidoCompra getEntidade() {
94
                return entidade;
95
        }
96
 
97
        @Override
98
        public ProdutoPedidoCompra getId() {
99
                return getEntidade();
100
        }
101
 
102
        public List<ProdutoPedidoCompra> getProdutoPedidoCompras() {
103
                return produtoPedidoCompras;
104
        }
105
        public void setProdutoPedidoCompras(List<ProdutoPedidoCompra> produtoPedidoCompras) {
106
                this.produtoPedidoCompras = produtoPedidoCompras;
107
        }
108
        public void prepararConsulta() {
109
                setProdutoPedidoCompras(produtoPedidoCompraService.consultarPassandoParametrosConsulta(parametrosConsulta, 0, produtoPedidoCompraService.obterQuantidadeDeRegistrosParametrosConsulta(parametrosConsulta), null, null, new HashMap<String, Object>()));
110
                atualizarResumoPedidos();
111
        }
112
        public Integer quantidadeItensPedidoParaComprar() {
113
                Integer quantidadeItens = 0;
114
                if (VerificadorUtil.naoEstaNulo(getProdutoPedidoCompras())) {
115
                        for (ProdutoPedidoCompra produtoPedidoCompra : getProdutoPedidoCompras()) {
116
                                if (VerificadorUtil.naoEstaNulo(produtoPedidoCompra.getQuantidadeParaComprar())) {
117
                                        quantidadeItens = quantidadeItens + produtoPedidoCompra.getQuantidadeParaComprar();
118
                                }
119
                        }
120
                }
121
                return quantidadeItens;
122
        }
123
 
124
        public ProdutoPedidoCompra getProdutoPedidoCompraSelecionado() {
125
                return produtoPedidoCompraSelecionado;
126
        }
127
        public void setProdutoPedidoCompraSelecionado(ProdutoPedidoCompra produtoPedidoCompraSelecionado) {
128
                this.produtoPedidoCompraSelecionado = produtoPedidoCompraSelecionado;
129
        }
130
 
131
        public TipoStatusPedidoCompra[] getTiposStatusPedidoCompra() {
132
                return TipoStatusPedidoCompra.values();
133
        }
134
 
135
        public ProdutoPedidoCompraExtrairDTO getProdutoPedidoCompraExtrairDTO() {
136
                return produtoPedidoCompraExtrairDTO;
137
        }
138
        public void setProdutoPedidoCompraExtrairDTO(ProdutoPedidoCompraExtrairDTO produtoPedidoCompraExtrairDTO) {
139
                this.produtoPedidoCompraExtrairDTO = produtoPedidoCompraExtrairDTO;
140
        }
141
 
142
        public String getPedidoEmTexto() {
143
                return pedidoEmTexto;
144
        }
145
        public void setPedidoEmTexto(String pedidoEmTexto) {
146
                this.pedidoEmTexto = pedidoEmTexto;
147
        }
148
 
149
        public Loja getLojaAlteracao() {
150
                return lojaAlteracao;
151
        }
152
        public void setLojaAlteracao(Loja lojaAlteracao) {
153
                this.lojaAlteracao = lojaAlteracao;
154
        }
155
 
156
        public Fornecedor getFornecedorAlteracao() {
157
                return fornecedorAlteracao;
158
        }
159
        public void setFornecedorAlteracao(Fornecedor fornecedorAlteracao) {
160
                this.fornecedorAlteracao = fornecedorAlteracao;
161
        }
162
 
163
        public String getStatusAlteracao() {
164
                return statusAlteracao;
165
        }
166
        public void setStatusAlteracao(String statusAlteracao) {
167
                this.statusAlteracao = statusAlteracao;
168
        }
169
 
170
        public List<PedidosResumoDTO> getResumoPedidos() {
171
                return resumoPedidos;
172
        }
173
        public void setResumoPedidos(List<PedidosResumoDTO> resumoPedidos) {
174
                this.resumoPedidos = resumoPedidos;
175
        }
176
 
177
        public Double getValorTotalPedido() {
178
                Double valorTotal = new Double(0.0);
179
                if (VerificadorUtil.naoEstaNuloOuVazio(getProdutoPedidoCompras())) {
180
                        for (ProdutoPedidoCompra pedido : getProdutoPedidoCompras()) {
181
                                if (VerificadorUtil.naoEstaNulo(pedido.getProduto().getValorCompra()) &&
182
                                                VerificadorUtil.naoEstaNulo(pedido.getQuantidadeParaComprar())) {
183
                                        valorTotal = valorTotal + (pedido.getProduto().getValorCompra() * pedido.getQuantidadeParaComprar());
184
                                }
185
                        }
186
                }
187
                return valorTotal;
188
        }
189
        public Double getValorTotalOrcadoPedido() {
190
                Double valorTotal = new Double(0.0);
191
                if (VerificadorUtil.naoEstaNuloOuVazio(getProdutoPedidoCompras())) {
192
                        for (ProdutoPedidoCompra pedido : getProdutoPedidoCompras()) {
193
                                if (VerificadorUtil.naoEstaNulo(pedido.getValorOrcado()) &&
194
                                                VerificadorUtil.naoEstaNulo(pedido.getQuantidadeParaComprar())) {
195
                                        valorTotal = valorTotal + (pedido.getValorOrcado() * pedido.getQuantidadeParaComprar());
196
                                }
197
                        }
198
                }
199
                return valorTotal;
200
        }
201
 
202
        public void atualizarResumoPedidos() {
203
                List<Fornecedor> fornecedores = fornecedorService.consultarTodos(new Fornecedor());
204
                List<PedidosResumoDTO> resumo = new ArrayList<PedidosResumoDTO>();
205
                for (Fornecedor fornecedor : fornecedores) {
206
                        PedidosResumoDTO pedidosResumoDTO = new PedidosResumoDTO();
207
                        pedidosResumoDTO.setFornecedor(fornecedor);
208
                        resumo.add(pedidosResumoDTO);
209
                }
210
                List<ProdutoPedidoCompra> produtosPedido = produtoPedidoCompraService.consultarTodos(new ProdutoPedidoCompra());
211
                for (ProdutoPedidoCompra pedido : produtosPedido) {
212
                        for (PedidosResumoDTO pedidoResumo : resumo) {
213
                                if (VerificadorUtil.naoEstaNulo(pedido.getFornecedorParaComprar())) {
214
                                        if (pedidoResumo.getFornecedor().equals(pedido.getFornecedorParaComprar())) {
215
                                                if (pedido.getStatus().equals(TipoStatusPedidoCompra.PENDENTE.getValor())) {
216
                                                        pedidoResumo.adicionarPendencias();
217
                                                }
218
                                                if (pedido.getStatus().equals(TipoStatusPedidoCompra.VERIFICADO.getValor())) {
219
                                                        pedidoResumo.adicionarVerificados();
220
                                                }
221
                                                if (pedido.getStatus().equals(TipoStatusPedidoCompra.SOLICITADO.getValor())) {
222
                                                        pedidoResumo.adicionarSolicitados();
223
                                                }
224
                                                if (pedido.getStatus().equals(TipoStatusPedidoCompra.SEM_ESTOQUE.getValor())) {
225
                                                        pedidoResumo.adicionarSemEstoque();
226
                                                }
227
                                        }
228
                                }
229
                        }
230
                }
231
                List<PedidosResumoDTO> pedidos = new ArrayList<PedidosResumoDTO>();
232
                for (PedidosResumoDTO pedido : resumo) {
233
                        if (pedido.getQuantidadeTotal() > 0) {
234
                                pedidos.add(pedido);
235
                        }
236
                }
237
                setResumoPedidos(pedidos);
238
        }
239
 
240
        @Override
241
        public void cadastrar() {
242
                super.cadastrar();
243
                prepararConsulta();
244
        }
245
 
246
        @Override
247
        public void alterar() {
248
                super.alterar();
249
                prepararConsulta();
250
        }
251
 
252
        public void iniciarSolicitacao(Produto produto) {
253
                ProdutoPedidoCompra produtoPedidoCompra = new ProdutoPedidoCompra();
254
                produtoPedidoCompra.setProduto(produto);
255
                produtoPedidoCompra.setDataPedido(DataUtils.getDataAtual());
256
                produtoPedidoCompra.setDataUltimaAtualizacao(DataUtils.getDataAtual());
257
                produtoPedidoCompra.setStatus(TipoStatusPedidoCompra.VERIFICADO.getValor());
258
                produtoPedidoCompra.setUsuarioPedido(contextoSeguranca.obterUsuario());
259
                produtoPedidoCompra.setUsuarioUltimaAtualizacao(contextoSeguranca.obterUsuario());
260
                setProdutoPedidoCompraSelecionado(produtoPedidoCompra);
261
        }
262
 
263
        public void prepararOrcamento(ProdutoPedidoCompra produtoPedidoCompra) {
264
                setProdutoPedidoCompraSelecionado(produtoPedidoCompra);
265
        }
266
 
267
        public void consultarSolicitacaoCompra(Produto produto) {
268
                Produto produtoDetalhado = produtoService.detalharProduto(produto);
269
                ProdutoPedidoCompra produtoPedidoCompra = new ProdutoPedidoCompra();
270
                produtoPedidoCompra.setProduto(produtoDetalhado);
271
                setProdutoPedidoCompraSelecionado(produtoPedidoCompraService.consultarPorProduto(produtoPedidoCompra.getProduto()));
272
                if (VerificadorUtil.estaNulo(getProdutoPedidoCompraSelecionado())) {
273
                        iniciarSolicitacao(produtoDetalhado);
274
                        List<FornecedorProduto> fornecedores = new ArrayList<>(produtoDetalhado.getFornecedores());
275
                        if (fornecedores.size() == 1) {
276
                                getProdutoPedidoCompraSelecionado().setFornecedorParaComprar(fornecedores.get(0).getFornecedor());
277
                        }
278
                }
279
                getProdutoPedidoCompraSelecionado().setQuantidadeEstoque(produtoLojaService.consultarEstoqueProduto(produtoDetalhado));
280
                getProdutoPedidoCompraSelecionado().setProduto(produtoDetalhado);
281
                getProdutoPedidoCompraSelecionado().setProdutosHistorico(produtoService.consultarHistorico(produtoDetalhado, 6));
282
        }
283
 
284
        public void consultarSolicitacaoResumidaCompra(Produto produto) {
285
                Produto produtoDetalhado = produtoService.detalharProduto(produto);
286
                ProdutoPedidoCompra produtoPedidoCompra = new ProdutoPedidoCompra();
287
                produtoPedidoCompra.setProduto(produtoDetalhado);
288
                setProdutoPedidoCompraSelecionado(produtoPedidoCompraService.consultarPorProduto(produtoPedidoCompra.getProduto()));
289
                if (VerificadorUtil.estaNulo(getProdutoPedidoCompraSelecionado())) {
290
                        iniciarSolicitacao(produtoDetalhado);
291
                        getProdutoPedidoCompraSelecionado().setStatus(null);
292
                        getProdutoPedidoCompraSelecionado().setQuantidadeEstoque(produtoLojaService.consultarEstoqueProduto(produtoDetalhado));
293
                }
294
                getProdutoPedidoCompraSelecionado().setProduto(produtoDetalhado);
295
        }
296
 
297
        public void alterarSolicitacaoCompra() {
298
                new VerificadorLancamentoException().tratarIhRelancarExcecaoSemLimparEntidade(new CommandBean() {
299
                        public void execute() {
300
                                getProdutoPedidoCompraSelecionado().setUsuarioUltimaAtualizacao(contextoSeguranca.obterUsuario());
301
                                getProdutoPedidoCompraSelecionado().setDataUltimaAtualizacao(DataUtils.getDataAtual());
302
                                getService().alterar(getProdutoPedidoCompraSelecionado());
303
                                prepararConsulta();
304
                                LancadorMensagem.lancarSucesso("Solicitação de compra realizada com sucesso!");
305
                        }
306
                });
307
        }
308
 
309
        public void alterarSolicitacaoCompraResumida() {
310
                new VerificadorLancamentoException().tratarIhRelancarExcecaoSemLimparEntidade(new CommandBean() {
311
                        public void execute() {
312
                                getProdutoPedidoCompraSelecionado().setStatus(TipoStatusPedidoCompra.PENDENTE.getValor());
313
                                /*
314
                                if (getProdutoPedidoCompraSelecionado().getProduto().tipoProdutoEhRemedioOuOutros()) {
315
                                        getProdutoPedidoCompraSelecionado().setLoja(new Loja(ConstantesSEC.SEQUENCIAL_LOJA_FARMACIA_7));
316
                                } else {
317
                                        getProdutoPedidoCompraSelecionado().setLoja(new Loja(ConstantesSEC.SEQUENCIAL_ESTOQUE_9));
318
                                }
319
                                */
320
                                getService().alterar(getProdutoPedidoCompraSelecionado());
321
                                prepararConsulta();
322
                                LancadorMensagem.lancarSucesso("Solicitação de compra realizada com sucesso!");
323
                        }
324
                });
325
        }
326
 
327
        public void excluirSolicitacaoCompra(final ProdutoPedidoCompra produtoPedidoCompra) {
328
                new VerificadorLancamentoException().tratarIhRelancarExcecaoSemLimparEntidade(new CommandBean() {
329
                        public void execute() {
330
                                produtoPedidoCompraService.excluirPedido(produtoPedidoCompra.getProduto(), produtoPedidoCompra.getLoja());
331
                                prepararConsulta();
332
                                LancadorMensagem.lancarSucesso("Solicitação de compra excluída com sucesso!");
333
                        }
334
                });
335
        }
336
 
337
        public String obterInformacoesUltimaCompraFornecedorSelecionado(Produto produto, Fornecedor fornecedor) {
338
                FornecedorProduto fornecedorProduto = new FornecedorProduto();
339
                fornecedorProduto.setProduto(produto);
340
                fornecedorProduto.setFornecedor(fornecedor);
341
                fornecedorProduto = fornecedorProdutoService.consultarPorFornecedorEeProduto(fornecedorProduto);
342
                String informacoes = null;
343
                if (VerificadorUtil.naoEstaNulo(fornecedorProduto)) {
344
                        informacoes = "ID: " + fornecedorProduto.getIdentificador() + ", CUSTO: R$" + fornecedorProduto.getValorCompra();
345
                }
346
                return informacoes;
347
        }
348
 
349
        public String obterFornecedorMenorValorComprado(ProdutoPedidoCompra produtoPedidoCompra) {
350
                Produto produtoDetalhado = produtoService.detalharProduto(produtoPedidoCompra.getProduto());
351
                return produtoDetalhado.getFornecedorMenorValorComprado(produtoPedidoCompra.getFornecedorParaComprar());
352
        }
353
 
354
        public void iniciarExtrairSolicitacao() {
355
                setProdutoPedidoCompraExtrairDTO(new ProdutoPedidoCompraExtrairDTO());
356
                extrairSolicitacao();
357
        }
358
 
359
        public void extrairSolicitacao() {
360
                if (VerificadorUtil.naoEstaNulo(getProdutoPedidoCompraExtrairDTO())) {
361
                        StringBuilder extraido = new StringBuilder(adicionarTituloExtrair());
362
                        for (ProdutoPedidoCompra pedido : getProdutoPedidoCompras()) {
363
                                if (getProdutoPedidoCompraExtrairDTO().getColunaQuantidade()) {
364
                                        if (VerificadorUtil.naoEstaNulo(pedido.getQuantidadeParaComprar())) {
365
                                                extraido.append(String.format("%-8s", pedido.getQuantidadeParaComprar()));
366
                                        } else {
367
                                                extraido.append(String.format("%-8s", "XXX"));
368
                                        }
369
                                }
370
                                if (getProdutoPedidoCompraExtrairDTO().getColunaCodigoEAN()) {
371
                                        if (VerificadorUtil.naoEstaNuloOuVazio(pedido.getProduto().getCodigoEAN())) {
372
                                                extraido.append(String.format("%-16s", pedido.getProduto().getCodigoEAN()));
373
                                        }
374
                                }
375
                                if (getProdutoPedidoCompraExtrairDTO().getColunaCodigoFornecedor()) {
376
                                        Produto produtoConsultado = produtoService.detalharProduto(pedido.getProduto());
377
                                        if (VerificadorUtil.naoEstaNuloOuVazio(pedido.getCodigoDoFornecedorParaComprar(produtoConsultado))) {
378
                                                extraido.append(" [" + pedido.getCodigoDoFornecedorParaComprar(produtoConsultado) + "] ");
379
                                        }
380
                                }
381
                                if (getProdutoPedidoCompraExtrairDTO().getColunaModelo()) {
382
//                                      if (!pedido.getProduto().tipoProdutoEhRemedioOuOutros()) {
383
                                        extraido.append(pedido.getProduto().getDescricaoDoModelo());
384
//                                      }
385
                                }
386
                                if (getProdutoPedidoCompraExtrairDTO().getColunaDescricao()) {
387
                                        if (getProdutoPedidoCompraExtrairDTO().getColunaModelo()) {
388
                                                extraido.append(" - ");
389
                                        }
390
                                        extraido.append(pedido.getProduto().getDescricaoCompleta());
391
                                }
392
                                if (getProdutoPedidoCompraExtrairDTO().getColunaMenorValor()) {
393
                                        extraido.append(" ");
394
                                        extraido.append(obterFornecedorMenorValorComprado(pedido));
395
                                }
396
                                if (getProdutoPedidoCompraExtrairDTO().getColunaValorVenda()) {
397
                                        extraido.append(" R$ " + formatarValor(pedido.getProduto().getValorVarejo()));
398
                                }
399
                                extraido.append("\n");
400
                        }
401
                        setPedidoEmTexto(extraido.toString());
402
                }
403
        }
404
 
405
        private String formatarValor(Double valor) {
406
                return VerificadorUtil.naoEstaNulo(valor)? String.format("%.2f", valor) : "0,00";
407
        }
408
 
409
        private String adicionarTituloExtrair() {
410
                StringBuilder titulo = new StringBuilder();
411
                if (getProdutoPedidoCompraExtrairDTO().getColunaQuantidade()) {
412
                        titulo.append("QNT");
413
                }
414
                if (getProdutoPedidoCompraExtrairDTO().getColunaCodigoEAN()) {
415
                        if (titulo.length() > 0) {
416
                                titulo.append("  |  ");
417
                        }
418
                        titulo.append("ID");
419
                }
420
                if (getProdutoPedidoCompraExtrairDTO().getColunaModelo()) {
421
                        if (titulo.length() > 0) {
422
                                titulo.append("  |  ");
423
                        }
424
                        titulo.append("MODELO");               
425
                }
426
                if (getProdutoPedidoCompraExtrairDTO().getColunaDescricao()) {
427
                        if (titulo.length() > 0) {
428
                                titulo.append("  |  ");
429
                        }
430
                        titulo.append("DESCRIÇÃO");
431
                }
432
                if (getProdutoPedidoCompraExtrairDTO().getColunaCodigoFornecedor()) {
433
                        if (titulo.length() > 0) {
434
                                titulo.append("  |  ");
435
                        }
436
                        titulo.append("[ID]");
437
                }
438
                if (getProdutoPedidoCompraExtrairDTO().getColunaMenorValor()) {
439
                        if (titulo.length() > 0) {
440
                                titulo.append("  |  ");
441
                        }
442
                        titulo.append("MENOR $");
443
                }
444
                if (getProdutoPedidoCompraExtrairDTO().getColunaValorVenda()) {
445
                        if (titulo.length() > 0) {
446
                                titulo.append("  |  ");
447
                        }
448
                        titulo.append("$ VENDA");
449
                }
450
                return titulo.append("\n").toString();
451
        }
452
 
453
        public void confirmarSolicitacaoCompra() {
454
                new VerificadorLancamentoException().tratarIhRelancarExcecaoSemLimparEntidade(new CommandBean() {
455
                        public void execute() {
456
                                for (ProdutoPedidoCompra pedido : getProdutoPedidoCompras()) {
457
                                        pedido.setStatus(TipoStatusPedidoCompra.SOLICITADO.getValor());
458
                                        produtoPedidoCompraService.alterar(pedido);
459
                                }
460
                                prepararConsulta();
461
                                LancadorMensagem.lancarSucesso("Solicitações de compra confirmada com sucesso!");
462
                        }
463
                });
464
        }
465
 
466
        public String consultarDetalhesSolicitacaoCompra(Produto produto, Loja loja) {
467
                StringBuilder detalhesSolicitacao = new StringBuilder();
468
                ProdutoPedidoCompra produtoPedidoCompra = new ProdutoPedidoCompra();
469
                produtoPedidoCompra.setProduto(produto);
470
                produtoPedidoCompra.setLoja(loja);
471
                produtoPedidoCompra = produtoPedidoCompraService.consultarPorProduto(produtoPedidoCompra.getProduto());
472
                if (VerificadorUtil.naoEstaNulo(produtoPedidoCompra)) {
473
                        if (VerificadorUtil.naoEstaNulo(produtoPedidoCompra.getQuantidadeParaComprar())) {
474
                                detalhesSolicitacao.append(produtoPedidoCompra.getQuantidadeParaComprar());
475
                        }
476
                        if (VerificadorUtil.naoEstaNulo(produtoPedidoCompra.getValorOrcado())) {
477
                                detalhesSolicitacao.append(" POR R$ ");
478
                                detalhesSolicitacao.append(produtoPedidoCompra.getValorOrcado());
479
                        } else {
480
                                detalhesSolicitacao.append(" SEM PREÇO");
481
                        }
482
                } else {
483
                        detalhesSolicitacao.append("NÃO");
484
                }
485
                return detalhesSolicitacao.toString();
486
        }
487
 
488
        public void prepararAlteracaoPedidos() {
489
                setLojaAlteracao(null);
490
                setFornecedorAlteracao(null);
491
                setStatusAlteracao(null);
492
        }
493
 
494
        public void alterarDadosPedidosConsultados() {
495
                new VerificadorLancamentoException().tratarIhRelancarExcecaoSemLimparEntidade(new CommandBean() {
496
                        public void execute() {
497
                                for (ProdutoPedidoCompra pedido : getProdutoPedidoCompras()) {
498
                                        if (VerificadorUtil.naoEstaNulo(getLojaAlteracao())) {
499
                                                pedido.setLoja(getLojaAlteracao());
500
                                        }
501
                                        if (VerificadorUtil.naoEstaNulo(getFornecedorAlteracao())) {
502
                                                pedido.setFornecedorParaComprar(getFornecedorAlteracao());
503
                                        }
504
                                        if (VerificadorUtil.naoEstaNulo(getStatusAlteracao())) {
505
                                                pedido.setStatus(getStatusAlteracao());
506
                                        }
507
                                        produtoPedidoCompraService.alterar(pedido);
508
                                }
509
                                prepararConsulta();
510
                                LancadorMensagem.lancarSucesso("DADOS ALTERADOS COM SUCESSO!");
511
                        }
512
                });
513
        }
514
 
515
}