Subversion Repositories Integrator Subversion

Rev

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

Rev Author Line No. Line
535 blopes 1
package br.com.ec.controller;
2
 
3
import java.io.Serializable;
4
import java.util.List;
5
 
6
import javax.inject.Inject;
7
import javax.inject.Named;
8
 
9
import org.springframework.context.annotation.Scope;
10
 
11
import br.com.ec.core.generic.GenericService;
12
import br.com.ec.domain.dto.EstoqueAuditoriaDTO;
537 blopes 13
import br.com.ec.domain.dto.LojaDTO;
535 blopes 14
import br.com.ec.domain.dto.ProdutoDTO;
537 blopes 15
import br.com.ec.domain.dto.UsuarioDTO;
535 blopes 16
import br.com.ec.domain.model.EstoqueAuditoria;
537 blopes 17
import br.com.ec.domain.model.Usuario;
18
import br.com.ec.domain.service.ContextoSeguranca;
535 blopes 19
import br.com.ec.domain.service.EstoqueAuditoriaService;
20
import br.com.ec.domain.service.ProdutoService;
537 blopes 21
import br.com.ec.domain.shared.ConstantesSEC;
535 blopes 22
import br.com.ec.web.exception.VerificadorLancamentoException;
23
import br.com.ec.web.exception.VerificadorLancamentoException.CommandBean;
24
import br.com.ec.web.generic.AbstractBean;
25
import br.com.ec.web.message.LancadorMensagem;
26
import br.com.ec.web.util.TipoOperacao;
27
 
28
@Named
29
@Scope("view")
30
public class EstoqueAuditoriaBean extends AbstractBean<EstoqueAuditoria> implements Serializable {
31
 
32
        private static final long serialVersionUID = 1L;
33
 
34
        private EstoqueAuditoriaService estoqueAuditoriaService;
35
 
36
        private ProdutoDTO produtoParaProduzir;
37
        private ProdutoDTO produtoProduzido;
38
        private Integer quantidadeParaProduzir;
39
 
40
        private ProdutoService produtoService;
41
 
42
        private List<EstoqueAuditoriaDTO> auditorias;
537 blopes 43
        private UsuarioDTO usuarioParaContagemDTO;
535 blopes 44
 
537 blopes 45
        private ContextoSeguranca contextoSeguranca;
46
 
535 blopes 47
        /*
48
        private EstoqueAuditoriaDTO entidadeParaConsulta;
49
        private List<EstoqueAuditoriaDTO> auditorias;
50
 
51
        private ParametrosConsultaEstampaDTO parametrosConsultaEstampaDTO;
52
        private EstampaConsultaPorDemanda lazy;
53
        */
54
 
55
        @Inject
537 blopes 56
        public EstoqueAuditoriaBean(EstoqueAuditoriaService estoqueAuditoriaService, ProdutoService produtoService, ContextoSeguranca contextoSeguranca) {
535 blopes 57
                this.estoqueAuditoriaService = estoqueAuditoriaService;
58
                this.produtoService = produtoService;
537 blopes 59
                this.contextoSeguranca = contextoSeguranca;
535 blopes 60
        }
61
 
62
        @Override
63
        public void preCarregamento() {
64
//              parametrosConsultaEstampaDTO = new ParametrosConsultaEstampaDTO();
65
//              prepararConsultaDemanda();
66
                limparEntidade();
67
                setAuditorias(estoqueAuditoriaService.consultarUltimasProducoes(50));
68
        }
69
 
70
        @Override
71
        public void limparEntidade() {
72
                setEntidade(new EstoqueAuditoria());
73
                setProdutoParaProduzir(new ProdutoDTO());
74
                setProdutoProduzido(new ProdutoDTO());
75
                setQuantidadeParaProduzir(1);
76
//              setEntidadeParaConsulta(new EstampaDTO());
77
        }
78
 
79
        @Override
80
        public GenericService<EstoqueAuditoria> getService() {
81
                return estoqueAuditoriaService;
82
        }
83
 
84
        @Override
85
        public EstoqueAuditoria getEntidade() {
86
                return entidade;
87
        }
88
 
89
        @Override
90
        public void preConsultar() {
91
                setTipoOperacao(TipoOperacao.CONSULTAR);
92
        }
93
 
94
        @Override
95
        public EstoqueAuditoria getId() {
96
                return getEntidade();
97
        }
98
 
99
        public ProdutoDTO getProdutoParaProduzir() {
100
                return produtoParaProduzir;
101
        }
102
        public void setProdutoParaProduzir(ProdutoDTO produtoParaProduzir) {
103
                this.produtoParaProduzir = produtoParaProduzir;
104
        }
105
 
106
        public ProdutoDTO getProdutoProduzido() {
107
                return produtoProduzido;
108
        }
109
        public void setProdutoProduzido(ProdutoDTO produtoProduzido) {
110
                this.produtoProduzido = produtoProduzido;
111
        }
112
 
113
        public Integer getQuantidadeParaProduzir() {
114
                return quantidadeParaProduzir;
115
        }
116
        public void setQuantidadeParaProduzir(Integer quantidadeParaProduzir) {
117
                this.quantidadeParaProduzir = quantidadeParaProduzir;
118
        }
119
 
120
        public List<EstoqueAuditoriaDTO> getAuditorias() {
121
                return auditorias;
122
        }
123
        public void setAuditorias(List<EstoqueAuditoriaDTO> auditorias) {
124
                this.auditorias = auditorias;
125
        }
126
 
537 blopes 127
        public UsuarioDTO getUsuarioParaContagemDTO() {
128
                return usuarioParaContagemDTO;
129
        }
130
        public void setUsuarioParaContagemDTO(UsuarioDTO usuarioParaContagemDTO) {
131
                this.usuarioParaContagemDTO = usuarioParaContagemDTO;
132
        }
535 blopes 133
 
134
        /*********************************************************/
135
 
136
        public void consultarProdutoParaProduzir() {
137
                setProdutoParaProduzir(produtoService.consultarProdutoDTOPorCodigoOuCodigoEAN(getProdutoParaProduzir().getCodigo()));
138
        }
139
 
140
        public void consultarProdutoProduzido() {
141
                setProdutoProduzido(produtoService.consultarProdutoDTOPorCodigoOuCodigoEAN(getProdutoProduzido().getCodigo()));
142
        }
143
 
144
        public void produzir() {
145
        new VerificadorLancamentoException().tratarIhRelancarExcecaoSemLimparEntidade(new CommandBean() {
146
                        public void execute() {
537 blopes 147
                                setUsuarioParaContagemDTO(contextoSeguranca.obterUsuario());
148
                                LojaDTO lojaMatriz = new LojaDTO(ConstantesSEC.Loja.SEQUENCIAL_MATRIZ_ESTOQUE_9);
149
//                              verificarSeTemPerfilVendedorOuSuperior(getUsuarioParaContagemDTO());
150
                                produtoService.realizarProducao(lojaMatriz, getProdutoParaProduzir(), getProdutoProduzido(), getQuantidadeParaProduzir(),
151
                                                getUsuarioParaContagemDTO());
535 blopes 152
                                limparEntidade();
153
                                LancadorMensagem.lancarSucesso("PRODUÇÃO REALIZADA COM SUCESSO");
154
                        }
155
                });
156
    }
157
 
158
}