Subversion Repositories Integrator Subversion

Rev

Go to most recent revision | Details | 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.Date;
6
import java.util.List;
7
 
8
import javax.inject.Inject;
9
import javax.inject.Named;
10
 
11
import org.springframework.context.annotation.Scope;
12
 
13
import br.com.ec.controller.managedbean.consultademanda.ParcelaRecebiveisConsultaPorDemanda;
14
import br.com.ec.domain.dto.ParametrosConsultaLancamentosDTO;
15
import br.com.ec.domain.model.Parcela;
16
import br.com.ec.domain.model.tipos.TipoCartao;
17
import br.com.ec.domain.service.parcela.ParcelaService;
18
import br.edu.cesmac.core.generic.GenericService;
19
import br.edu.cesmac.core.util.DataUtils;
20
import br.edu.cesmac.core.util.VerificadorUtil;
21
import br.edu.cesmac.web.exception.VerificadorLancamentoException;
22
import br.edu.cesmac.web.exception.VerificadorLancamentoException.CommandBean;
23
import br.edu.cesmac.web.generic.AbstractBean;
24
import br.edu.cesmac.web.message.LancadorMensagem;
25
 
26
@Named
27
@Scope("view")
28
public class ReceberParcelasBean extends AbstractBean<Parcela> implements Serializable {
29
 
30
        private static final long serialVersionUID = 1L;
31
 
32
        private ParametrosConsultaLancamentosDTO parametrosConsultaLancamentos;
33
 
34
        private ParcelaRecebiveisConsultaPorDemanda lazyProgramadosRecebiveis;
35
 
36
        private List<Parcela> parcelasSelecionadas;
37
    private Date dataRecebimento;
38
 
39
    private ParcelaService parcelaService;
40
 
41
        @Inject
42
        public ReceberParcelasBean(ParcelaRecebiveisConsultaPorDemanda lazyProgramadosRecebiveis, ParcelaService parcelaService) {
43
                this.lazyProgramadosRecebiveis = lazyProgramadosRecebiveis;
44
                this.parcelaService = parcelaService;
45
        }
46
 
47
        @Override
48
        public void preCarregamento() {
49
                entidade = new Parcela();
50
                parametrosConsultaLancamentos = new ParametrosConsultaLancamentosDTO();
51
                parametrosConsultaLancamentos.setEntidade(new Parcela());
52
                parametrosConsultaLancamentos.setDataInicial(DataUtils.getPrimeiroDiaDoMesAtual());
53
                parametrosConsultaLancamentos.setDataFinal(DataUtils.getUltimoDiaDoMesAtual());
54
                parcelasSelecionadas = new ArrayList<Parcela>();
55
        }
56
 
57
        @Override
58
        public void limparEntidade() {
59
                entidade = new Parcela();
60
        }
61
 
62
        @Override
63
        public GenericService<Parcela> getService() {
64
                return null;
65
        }
66
 
67
        @Override
68
        public Parcela getEntidade() {
69
                return entidade;
70
        }
71
 
72
        @Override
73
        public Parcela getId() {
74
                return getEntidade();
75
        }
76
 
77
        public ParametrosConsultaLancamentosDTO getParametrosConsultaLancamentos() {
78
                return parametrosConsultaLancamentos;
79
        }
80
        public void setParametrosConsultaLancamentos(ParametrosConsultaLancamentosDTO parametrosConsultaLancamentos) {
81
                this.parametrosConsultaLancamentos = parametrosConsultaLancamentos;
82
        }
83
 
84
        public ParcelaRecebiveisConsultaPorDemanda getLazyProgramadosRecebiveis() {
85
                prepararConsultaDemandaProgramadosRecebiveis();
86
                return lazyProgramadosRecebiveis;
87
        }
88
        public void setLazyProgramadosRecebiveis(ParcelaRecebiveisConsultaPorDemanda lazyProgramadosRecebiveis) {
89
                this.lazyProgramadosRecebiveis = lazyProgramadosRecebiveis;
90
        }
91
        public void prepararConsultaDemandaProgramadosRecebiveis() {
92
                getParametrosConsultaLancamentos().setPagamentoRealizado(false);
93
                getParametrosConsultaLancamentos().setOrdenacao("e.dataVencimento");
94
                getParametrosConsultaLancamentos().setTipoBusca("R");
95
                lazyProgramadosRecebiveis.setarParametrosConsulta(getParametrosConsultaLancamentos());
96
        }
97
 
98
        public Date getDataRecebimento() {
99
                return dataRecebimento;
100
        }
101
        public void setDataRecebimento(Date dataRecebimento) {
102
                this.dataRecebimento = dataRecebimento;
103
        }
104
 
105
        public List<Parcela> getParcelasSelecionadas() {
106
                return parcelasSelecionadas;
107
        }
108
        public void setParcelasSelecionadas(List<Parcela> parcelasSelecionadas) {
109
                this.parcelasSelecionadas = parcelasSelecionadas;
110
        }
111
        public Double valorTotalParcelasSelecionadas() {
112
                Double total = new Double(0.0);
113
                if (VerificadorUtil.naoEstaNulo(getParcelasSelecionadas())) {
114
                        for (Parcela parcela : getParcelasSelecionadas()) {
115
                                total = total + parcela.getValor();
116
                        }
117
                }
118
                return total;
119
        }
120
 
121
        public TipoCartao[] getTiposCartoes() {
122
                return TipoCartao.values();
123
        }
124
 
125
        /***************************************************************/
126
 
127
        public void receberParcelas() {
128
                new VerificadorLancamentoException().tratarIhRelancarExcecaoSemLimparEntidade(new CommandBean() {
129
                        public void execute() {
130
                                parcelaService.receberParcelas(getDataRecebimento(), getParcelasSelecionadas());
131
                                LancadorMensagem.lancarSucesso("PARCELA(S) RECEBIDA(S) COM SUCESSO!");
132
                        }
133
                });
134
        }
135
 
136
 
137
}