Subversion Repositories Integrator Subversion

Rev

Details | Last modification | View Log | RSS feed

Rev Author Line No. Line
1 espaco 1
package br.com.ec.domain.dto;
2
 
3
import java.util.ArrayList;
4
import java.util.Date;
5
import java.util.List;
6
 
7
import br.com.ec.domain.model.Pedido;
8
import br.com.ec.domain.model.PedidoProduto;
9
import br.edu.cesmac.core.util.StringUtil;
10
import br.edu.cesmac.core.util.VerificadorUtil;
11
 
12
public class PedidoDTO {
13
 
14
        private Long sequencial;
15
        private String descricaoLoja;
16
        private Date dataPedido;
17
        private String nomePessoaDoPedido;
18
        private String nomeCliente;
19
        private String contatoCliente;
20
        private String informacoesBasicasCliente;
21
        private String valorTotalProdutos;
22
        private String observacao;
23
        private String tipoSituacao;
24
        private Date dataUltimaAlteracaoSituacao;
25
        private Date dataSolicitadoParaComprar;
26
 
27
        private List<PedidoProdutoDTO> produtos;
28
 
29
        public Long getSequencial() {
30
                return sequencial;
31
        }
32
        public void setSequencial(Long sequencial) {
33
                this.sequencial = sequencial;
34
        }
35
 
36
        public String getDescricaoLoja() {
37
                return descricaoLoja;
38
        }
39
        public void setDescricaoLoja(String descricaoLoja) {
40
                this.descricaoLoja = descricaoLoja;
41
        }
42
 
43
        public Date getDataPedido() {
44
                return dataPedido;
45
        }
46
        public void setDataPedido(Date dataPedido) {
47
                this.dataPedido = dataPedido;
48
        }
49
 
50
        public String getNomePessoaDoPedido() {
51
                return nomePessoaDoPedido;
52
        }
53
        public void setNomePessoaDoPedido(String nomePessoaDoPedido) {
54
                this.nomePessoaDoPedido = nomePessoaDoPedido;
55
        }
56
 
57
        public String getNomeCliente() {
58
                return nomeCliente;
59
        }
60
        public void setNomeCliente(String nomeCliente) {
61
                this.nomeCliente = nomeCliente;
62
        }
63
 
64
        public String getContatoCliente() {
65
                return contatoCliente;
66
        }
67
        public void setContatoCliente(String contatoCliente) {
68
                this.contatoCliente = contatoCliente;
69
        }
70
 
71
        public String getInformacoesBasicasCliente() {
72
                return informacoesBasicasCliente;
73
        }
74
        public void setInformacoesBasicasCliente(String informacoesBasicasCliente) {
75
                this.informacoesBasicasCliente = informacoesBasicasCliente;
76
        }
77
 
78
        public String getValorTotalProdutos() {
79
                return valorTotalProdutos;
80
        }
81
        public void setValorTotalProdutos(String valorTotalProdutos) {
82
                this.valorTotalProdutos = valorTotalProdutos;
83
        }
84
 
85
        public String getObservacao() {
86
                return observacao;
87
        }
88
        public void setObservacao(String observacao) {
89
                this.observacao = observacao;
90
        }
91
 
92
        public Date getDataUltimaAlteracaoSituacao() {
93
                return dataUltimaAlteracaoSituacao;
94
        }
95
        public void setDataUltimaAlteracaoSituacao(Date dataUltimaAlteracaoSituacao) {
96
                this.dataUltimaAlteracaoSituacao = dataUltimaAlteracaoSituacao;
97
        }
98
 
99
        public List<PedidoProdutoDTO> getProdutos() {
100
                return produtos;
101
        }
102
        public void setProdutos(List<PedidoProdutoDTO> produtos) {
103
                this.produtos = produtos;
104
        }
105
 
106
        public void preencher(Pedido pedido) {
107
                this.sequencial = pedido.getSequencial();
108
                this.descricaoLoja = pedido.getDescricaoDaLoja();
109
                this.dataPedido = pedido.getDataPedido();
110
                this.nomePessoaDoPedido = pedido.getUsuarioPedido().getNomeDaPessoa();
111
                if (VerificadorUtil.naoEstaNulo(pedido.getCliente())) {
112
                        this.informacoesBasicasCliente = pedido.getCliente().getNome() + " " + pedido.getCliente().getContato();
113
                        this.nomeCliente = pedido.getCliente().getNome();
114
                        this.contatoCliente = pedido.getCliente().getContato();
115
                } else {
116
                        this.informacoesBasicasCliente = pedido.getContatoCliente();
117
                        this.contatoCliente = pedido.getContatoCliente();
118
                }
119
                this.observacao = pedido.getObservacao();
120
                this.dataUltimaAlteracaoSituacao = pedido.getDataUltimaAlteracaoSituacao();
121
                List<PedidoProdutoDTO> produtos = new ArrayList<PedidoProdutoDTO>();
122
                Double total = 0.0;
123
                if (VerificadorUtil.naoEstaNuloOuVazio(pedido.getProdutos())) {
124
                        for (PedidoProduto produto : pedido.getProdutos()) {
125
                                if (VerificadorUtil.naoEstaNulo(produto.getValor())) {
126
                                        total = total + produto.getValor() * produto.getQuantidade();
127
                                }
128
                                PedidoProdutoDTO pedidoProdutoDTO = new PedidoProdutoDTO();
129
                                pedidoProdutoDTO.setCodigoProduto(produto.getProduto().getCodigoProdutoPadrao());
130
                                pedidoProdutoDTO.setDescricaoProduto(produto.getProduto().getDescricaoComModeloCompleta());
131
                                pedidoProdutoDTO.setQuantidadeProduto(produto.getQuantidade());
132
                                String descricao = "";
133
                                if (produto.getQuantidade() > 1) {
134
                                        descricao = produto.getQuantidade() + " ITENS";
135
                                } else {
136
                                        descricao = produto.getQuantidade() + " ITEM";
137
                                }
138
                                descricao = descricao + " : (" + pedidoProdutoDTO.getCodigoProduto() + ") " + pedidoProdutoDTO.getDescricaoProduto() + " POR R$" + StringUtil.formatarValor(produto.getValor());
139
                                pedidoProdutoDTO.setDescricaoCompleta(descricao);
140
                                produtos.add(pedidoProdutoDTO);
141
                        }
142
                }
143
                this.valorTotalProdutos = StringUtil.formatarValor(total);
144
                this.produtos = produtos;
145
        }
146
 
147
}