Subversion Repositories Integrator Subversion

Rev

Rev 106 | Blame | Compare with Previous | Last modification | View Log | Download | RSS feed

package br.com.ec.controller.managedbean;

import java.io.Serializable;
import java.util.Date;
import java.util.List;

import javax.inject.Inject;
import javax.inject.Named;

import org.primefaces.model.chart.LineChartModel;
import org.springframework.context.annotation.Scope;

import br.com.ec.core.consulta.ParametrosConsulta;
import br.com.ec.core.generic.GenericService;
import br.com.ec.core.util.DataUtils;
import br.com.ec.core.util.VerificadorUtil;
import br.com.ec.domain.dto.ConsolidadoGestaoDTO;
import br.com.ec.domain.dto.FluxoDeCaixaDTO;
import br.com.ec.domain.dto.ReceitaDTO;
import br.com.ec.domain.model.FormaPagamento;
import br.com.ec.domain.service.acompanhamento.AcompanhamentoService;
import br.com.ec.domain.service.formapagamento.FormaPagamentoService;
import br.com.ec.web.generic.AbstractBean;

@Named
@Scope("view")
public class GestaoBean extends AbstractBean<ConsolidadoGestaoDTO> implements Serializable {

        private static final long serialVersionUID = 1L;
       
        private AcompanhamentoService acompanhamentoService;
        private FormaPagamentoService formaPagamentoService;
       
        private ConsolidadoGestaoDTO consolidadoGestao;
       
        private Date primeiroMes;
        private Date segundoMes;
        private LineChartModel graficoAcumulado;
       
        private FluxoDeCaixaDTO fluxoDeCaixa;
       
        private ReceitaDTO receita;
        private List<FormaPagamento> formasDePagamento;
       
        @Inject
        public GestaoBean(AcompanhamentoService acompanhamentoService, FormaPagamentoService formaPagamentoService) {
                this.acompanhamentoService = acompanhamentoService;
                this.formaPagamentoService = formaPagamentoService;
        }
       
        @Override
        public void preCarregamento() {
                try {
                        if (VerificadorUtil.estaNulo(parametrosConsulta)) {
                                entidade = new ConsolidadoGestaoDTO();
                                parametrosConsulta = new ParametrosConsulta<ConsolidadoGestaoDTO>();
                                parametrosConsulta.setEntidade(entidade);
                        }
                        setReceita(new ReceitaDTO(DataUtils.getPrimeiroDiaDoMesAtual(), DataUtils.getUltimoDiaDoMesAtual()));
                        setConsolidadoGestao(acompanhamentoService.consultarConsolidadoGestaoDTO());
                        setPrimeiroMes(DataUtils.getDataAtual());
                        setSegundoMes(DataUtils.acrescentarMeses(DataUtils.getDataAtual(), -1));
                        setGraficoAcumulado(acompanhamentoService.consultarGrafico(getPrimeiroMes(), getSegundoMes()));
                       
                        setFluxoDeCaixa(new FluxoDeCaixaDTO(DataUtils.getPrimeiroDiaDoMesAtual(), DataUtils.getUltimoDiaDoMesAtual()));
                        setFluxoDeCaixa(acompanhamentoService.consultarFluxoDeCaixa(getFluxoDeCaixa()));
                       
                        setFormasDePagamento(formaPagamentoService.listarFormasPagamentoAtivas());
                } catch (Exception e) {
                        e.printStackTrace();
                }
        }
       
        @Override
        public void limparEntidade() {
                setEntidade(new ConsolidadoGestaoDTO());
        }

        @Override
        public GenericService<ConsolidadoGestaoDTO> getService() {
                return null;
        }
       
        @Override
        public ConsolidadoGestaoDTO getEntidade() {
                return entidade;
        }

        @Override
        public ConsolidadoGestaoDTO getId() {
                return getEntidade();
        }
       
        public ConsolidadoGestaoDTO getConsolidadoGestao() {
                return consolidadoGestao;
        }
        public void setConsolidadoGestao(ConsolidadoGestaoDTO consolidadoGestao) {
                this.consolidadoGestao = consolidadoGestao;
        }
       
        public Date getPrimeiroMes() {
                return primeiroMes;
        }
        public void setPrimeiroMes(Date primeiroMes) {
                this.primeiroMes = primeiroMes;
        }
       
        public Date getSegundoMes() {
                return segundoMes;
        }
        public void setSegundoMes(Date segundoMes) {
                this.segundoMes = segundoMes;
        }
       
        public LineChartModel getGraficoAcumulado() {
                return graficoAcumulado;
        }
        public void setGraficoAcumulado(LineChartModel graficoAcumulado) {
                this.graficoAcumulado = graficoAcumulado;
        }
       
        public FluxoDeCaixaDTO getFluxoDeCaixa() {
                return fluxoDeCaixa;
        }
        public void setFluxoDeCaixa(FluxoDeCaixaDTO fluxoDeCaixa) {
                this.fluxoDeCaixa = fluxoDeCaixa;
        }
       
        public ReceitaDTO getReceita() {
                return receita;
        }
        public void setReceita(ReceitaDTO receita) {
                this.receita = receita;
        }
       
        public List<FormaPagamento> getFormasDePagamento() {
                return formasDePagamento;
        }
        public void setFormasDePagamento(List<FormaPagamento> formasDePagamento) {
                this.formasDePagamento = formasDePagamento;
        }
       
        /********************************************************************/
       
        public void consultarReceita() {
                acompanhamentoService.consultarReceita(getReceita());
        }
       
}