Subversion Repositories Integrator Subversion

Rev

Blame | Last modification | View Log | Download | RSS feed

package br.com.sl.controller;

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

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

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.VerificadorUtil;
import br.com.ec.web.exception.VerificadorLancamentoException;
import br.com.ec.web.exception.VerificadorLancamentoException.CommandBean;
import br.com.ec.web.generic.AbstractBean;
import br.com.ec.web.message.LancadorMensagem;
import br.com.sl.domain.model.Ativo;
import br.com.sl.domain.model.tipos.TipoTendencia;
import br.com.sl.domain.service.AtivoService;

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

        private static final long serialVersionUID = 1L;
       
        private AtivoService ativoService;
       
        private Ativo ativoSelecionado;
       
        private List<Ativo> ativos;
       
        public TipoTendencia[] getTiposTendencia() {
                return TipoTendencia.values();
        }

        @Inject
        public AtivoBean(AtivoService ativoService) {
                this.ativoService = ativoService;
        }
       
        @Override
        public void preCarregamento() {
                if (VerificadorUtil.estaNulo(parametrosConsulta)) {
                        entidade = new Ativo();
                        parametrosConsulta = new ParametrosConsulta<Ativo>();
                        parametrosConsulta.setEntidade(entidade);
                }
        }
       
        @Override
        public void limparEntidade() {
                Ativo ativo = new Ativo();
                ativo.setAtivo(true);
                setEntidade(ativo);
        }

        @Override
        public GenericService<Ativo> getService() {
                return ativoService;
        }
       
        @Override
        public Ativo getEntidade() {
                return entidade;
        }

        @Override
        public Ativo getId() {
                return getEntidade();
        }
       
        public List<Ativo> getAtivos() {
//              return ativoService.consultarPassandoEntidade(getParametrosConsulta().getEntidade(), 0, ativoService.obterQuantidadeDeRegistrosPassandoEntidade(getParametrosConsulta().getEntidade()));
                setAtivos(ativoService.consultarTodos(new Ativo()));
                return ativos;
        }
        public void setAtivos(List<Ativo> ativos) {
                this.ativos = ativos;
        }
       
        public Ativo getAtivoSelecionado() {
                return ativoSelecionado;
        }
        public void setAtivoSelecionado(Ativo ativoSelecionado) {
                this.ativoSelecionado = ativoSelecionado;
        }
       
        public void prepararConsulta() {
                setAtivos(ativoService.consultarPassandoEntidade(getParametrosConsulta().getEntidade(), 0, ativoService.obterQuantidadeDeRegistrosPassandoEntidade(getParametrosConsulta().getEntidade())));
        }
       
        public void excluirAtivo(final Ativo ativo) {
                new VerificadorLancamentoException().tratarIhRelancarExcecaoSemLimparEntidade(new CommandBean() {
                        public void execute() {
                                ativoService.excluir(ativo);
                                setAtivos(ativoService.consultarTodos(new Ativo()));
                                LancadorMensagem.lancarSucesso("Ativo excluĂ­da com sucesso");
                        }
                });
        }
       
}