Subversion Repositories Integrator Subversion

Rev

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

Rev Author Line No. Line
610 blopes 1
package br.com.ec.controller;
2
 
3
import java.io.Serializable;
4
import java.util.ArrayList;
5
import java.util.Date;
6
import java.util.List;
7
 
8
import javax.inject.Inject;
9
import javax.inject.Named;
10
 
11
import org.primefaces.event.FileUploadEvent;
12
import org.primefaces.model.StreamedContent;
13
import org.primefaces.model.file.UploadedFile;
14
import org.springframework.context.annotation.Scope;
15
 
16
import br.com.ec.controller.consultademanda.AvaliacaoConsultaPorDemanda;
17
import br.com.ec.core.consulta.ParametrosConsulta;
18
import br.com.ec.core.generic.GenericService;
19
import br.com.ec.core.util.VerificadorUtil;
20
import br.com.ec.domain.dto.AvaliacaoDTO;
21
import br.com.ec.domain.dto.ValeTransporteDTO;
22
import br.com.ec.domain.dto.ValeTransporteDTO;
23
import br.com.ec.domain.dto.ValeTransporteFuncionarioDTO;
24
import br.com.ec.domain.dto.ValeTransporteFuncionarioExtraidoDTO;
25
import br.com.ec.domain.model.Avaliacao;
26
import br.com.ec.domain.service.ParcelaService;
27
import br.com.ec.domain.service.ValeTransporteService;
28
import br.com.ec.web.exception.VerificadorLancamentoException;
29
import br.com.ec.web.exception.VerificadorLancamentoException.CommandBean;
30
import br.com.ec.web.exception.VerificadorLancamentoException.CommandRelatorioStreamedContent;
31
import br.com.ec.web.generic.AbstractBean;
32
import br.com.ec.web.message.LancadorMensagem;
33
import br.com.ec.web.util.TipoOperacao;
34
 
35
@Named
36
@Scope("view")
37
public class ValeTransporteBean extends AbstractBean<Avaliacao> implements Serializable {
38
 
39
        private static final long serialVersionUID = 1L;
40
 
41
        private ValeTransporteDTO valeTransporteDTO;
42
 
43
        private UploadedFile arquivoParaImportacao;
44
        private Date dataPagamento = new Date();
45
 
46
        private ValeTransporteService valeTransporteService;
47
        private ParcelaService parcelaService;
48
 
49
        private AvaliacaoConsultaPorDemanda lazy;
50
        private ParametrosConsulta<Avaliacao> parametrosConsultaAvaliacao;
51
 
52
        @Inject
53
        public ValeTransporteBean(AvaliacaoConsultaPorDemanda lazy, ValeTransporteService valeTransporteService, ParcelaService parcelaService) {
54
                this.lazy = lazy;
55
                this.valeTransporteService = valeTransporteService;
56
                this.parcelaService = parcelaService;
57
        }
58
 
59
        @Override
60
        public void preCarregamento() {
61
                parametrosConsultaAvaliacao = new ParametrosConsulta<Avaliacao>();
62
                parametrosConsultaAvaliacao.setEntidade(new Avaliacao());
63
                prepararConsultaDemanda();
64
                limparEntidade();
65
        }
66
 
67
        @Override
68
        public void limparEntidade() {
69
                setEntidade(new Avaliacao());
70
        }
71
 
72
        @Override
73
        public GenericService<Avaliacao> getService() {
74
                return valeTransporteService;
75
        }
76
 
77
        @Override
78
        public Avaliacao getEntidade() {
79
                return entidade;
80
        }
81
 
82
        @Override
83
        public void preConsultar() {
84
                setTipoOperacao(TipoOperacao.CONSULTAR);
85
        }
86
 
87
        @Override
88
        public void preAlterar(Avaliacao avaliacao) {
89
                super.preAlterar(avaliacao);
90
                setValeTransporteDTO(valeTransporteService.detalharValeTransporte(new AvaliacaoDTO(avaliacao.getSequencial(), avaliacao.getSequencialDaVigencia(), avaliacao.getDescricaoDaVigencia())));
91
        }
92
 
93
        @Override
94
        public Avaliacao getId() {
95
                return getEntidade();
96
        }
97
 
98
        public AvaliacaoConsultaPorDemanda getLazy() {
99
                return lazy;
100
        }
101
        public void setLazy(AvaliacaoConsultaPorDemanda lazy) {
102
                this.lazy = lazy;
103
        }
104
        public void prepararConsultaDemanda() {
105
                lazy.setarParametrosConsulta(getParametrosConsultaAvaliacao());
106
        }
107
 
108
        public ParametrosConsulta<Avaliacao> getParametrosConsultaAvaliacao() {
109
                return parametrosConsultaAvaliacao;
110
        }
111
        public void setParametrosConsultaAvaliacao(ParametrosConsulta<Avaliacao> parametrosConsultaAvaliacao) {
112
                this.parametrosConsultaAvaliacao = parametrosConsultaAvaliacao;
113
        }
114
 
115
        public ValeTransporteDTO getValeTransporteDTO() {
116
                return valeTransporteDTO;
117
        }
118
        public void setValeTransporteDTO(ValeTransporteDTO valeTransporteDTO) {
119
                this.valeTransporteDTO = valeTransporteDTO;
120
        }
121
 
122
        public UploadedFile getArquivoParaImportacao() {
123
                return arquivoParaImportacao;
124
        }
125
        public void setArquivoParaImportacao(UploadedFile arquivoParaImportacao) {
126
                this.arquivoParaImportacao = arquivoParaImportacao;
127
        }
128
 
129
        public Date getDataPagamento() {
130
                return dataPagamento;
131
        }
132
        public void setDataPagamento(Date dataPagamento) {
133
                this.dataPagamento = dataPagamento;
134
        }
135
 
136
        public List<ValeTransporteFuncionarioExtraidoDTO> funcionariosExtraidosForaDaAvaliacao() {
137
                List<ValeTransporteFuncionarioExtraidoDTO> extraidosForaDaAvaliacao = new ArrayList<ValeTransporteFuncionarioExtraidoDTO>();
138
                if (VerificadorUtil.naoEstaNuloOuVazio(getValeTransporteDTO().getFuncionariosExtraidos())) {
139
                        for (ValeTransporteFuncionarioExtraidoDTO extraido : getValeTransporteDTO().getFuncionariosExtraidos()) {
140
                                if (!extraido.getAdicionado()) {
141
                                        extraidosForaDaAvaliacao.add(extraido);
142
                                }
143
                        }
144
                }
145
                return extraidosForaDaAvaliacao;
146
        }
147
 
148
        /**************************************************/
149
 
150
        public void uploadArquivoEspacoCase() {
151
                new VerificadorLancamentoException().tratarIhRelancarExcecaoSemLimparEntidade(new CommandBean() {
152
                        public void execute() {
153
                                setValeTransporteDTO(valeTransporteService.importarValeTransporte(getArquivoParaImportacao().getContent(), getValeTransporteDTO()));
154
                                LancadorMensagem.lancarSucesso("ARQUIVO IMPORTADO COM SUCESSO!");
155
                        }
156
                });
157
        }
158
 
159
        public void uploadArquivoEspacoCase(final FileUploadEvent e) {
160
        new VerificadorLancamentoException().tratarIhRelancarExcecaoSemLimparEntidade(new CommandBean() {
161
                        public void execute() {
162
                                setValeTransporteDTO(valeTransporteService.importarValeTransporte(e.getFile().getContent(), getValeTransporteDTO()));
163
                        }
164
                });
165
    }
166
 
167
        public void atualizarValoresImportados() {
168
                new VerificadorLancamentoException().tratarIhRelancarExcecaoSemLimparEntidade(new CommandBean() {
169
                        public void execute() {
170
                                for (ValeTransporteFuncionarioDTO valeTransporteFuncionario : getValeTransporteDTO().getFuncionarios()) {
171
                                        if (VerificadorUtil.naoEstaNulo(valeTransporteFuncionario.getValorValeTransporteImportado()) &&
172
                                                        !VerificadorUtil.isListaNulaOuVazia(valeTransporteFuncionario.getParcelas())) {
173
                                                valeTransporteFuncionario.getParcelas().get(0).setValor(valeTransporteFuncionario.getValorValeTransporteImportado());
174
                                                valeTransporteService.atualizarValorParcela(valeTransporteFuncionario.getParcelas().get(0));
175
                                        }
176
                                }
177
                                LancadorMensagem.lancarSucesso("VALORES ATUALIZADOS COM SUCESSO");
178
                        }
179
                });
180
        }
181
 
182
        public void efetuarPagamentos() {
183
                new VerificadorLancamentoException().tratarIhRelancarExcecaoSemLimparEntidade(new CommandBean() {
184
                        public void execute() {
185
                                for (ValeTransporteFuncionarioDTO valeTransporteFuncionario : getValeTransporteDTO().getFuncionarios()) {
186
                                        if (!VerificadorUtil.isListaNulaOuVazia(valeTransporteFuncionario.getParcelas())) {
646 blopes 187
                                                if (valeTransporteFuncionario.getEfetuarPagamento()) {
188
                                                        parcelaService.efetuarPagamentoRecebimento(valeTransporteFuncionario.getParcelas().get(0), getDataPagamento());
189
                                                }
610 blopes 190
                                        }
191
                                }
192
                                setArquivoParaImportacao(null);
646 blopes 193
                                setValeTransporteDTO(valeTransporteService.detalharValeTransporte(new AvaliacaoDTO(getEntidade().getSequencial(), getEntidade().getSequencialDaVigencia(), getEntidade().getDescricaoDaVigencia())));
610 blopes 194
                                LancadorMensagem.lancarSucesso("PAGAMENTOS EFETUADOS COM SUCESSO");
195
                        }
196
                });
197
        }
198
 
199
}