Subversion Repositories Integrator Subversion

Rev

Rev 279 | Go to most recent revision | Blame | Compare with Previous | Last modification | View Log | Download | RSS feed

package br.com.ec.controller;

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

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

import org.springframework.context.annotation.Scope;

import br.com.ec.core.generic.GenericService;
import br.com.ec.core.util.DataUtils;
import br.com.ec.domain.dto.FuncionarioDTO;
import br.com.ec.domain.dto.FuncionarioFeriasDTO;
import br.com.ec.domain.model.FuncionarioFerias;
import br.com.ec.domain.service.FuncionarioFeriasService;
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;

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

        private static final long serialVersionUID = 1L;
       
        private List<FuncionarioFeriasDTO> feriasProvisionadasDTO;
        private FuncionarioFeriasDTO funcionarioFeriasSelecionada;
       
        private FuncionarioFeriasService funcionarioFeriasService;
       
        @Inject
        public FeriasBean(FuncionarioFeriasService funcionarioFeriasService) {
                this.funcionarioFeriasService = funcionarioFeriasService;
        }

        @Override
        public GenericService<FuncionarioFeriasDTO> getService() {
                return null;
        }

        @Override
        public FuncionarioFeriasDTO getId() {
                return null;
        }
       
        @Override
        public void preCarregamento() {
                limparEntidade();
                consultarFeriasProvisionadas();
        }

        @Override
        public void limparEntidade() {
                setEntidade(new FuncionarioFeriasDTO());
        }
       
        public List<FuncionarioFeriasDTO> getFeriasProvisionadasDTO() {
                return feriasProvisionadasDTO;
        }
        public void setFeriasProvisionadasDTO(List<FuncionarioFeriasDTO> feriasProvisionadasDTO) {
                this.feriasProvisionadasDTO = feriasProvisionadasDTO;
        }
       
        public FuncionarioFeriasDTO getFuncionarioFeriasSelecionada() {
                return funcionarioFeriasSelecionada;
        }
        public void setFuncionarioFeriasSelecionada(FuncionarioFeriasDTO funcionarioFeriasSelecionada) {
                this.funcionarioFeriasSelecionada = funcionarioFeriasSelecionada;
        }
       
        /*******************************************/
       
        public void consultarFeriasProvisionadas() {
                setFeriasProvisionadasDTO(funcionarioFeriasService.consultarFeriasProvisionadas());
        }
       
        public void provisionarFerias(FuncionarioFeriasDTO funcionarioFeriasDTO) {
                setFuncionarioFeriasSelecionada(funcionarioFeriasDTO);
        }
       
        public void confirmarProvisao() {
                new VerificadorLancamentoException().tratarIhRelancarExcecaoSemLimparEntidade(new CommandBean() {
                        public void execute() {
                                funcionarioFeriasService.confirmarProvisao(getFuncionarioFeriasSelecionada());
                                consultarFeriasProvisionadas();
                                LancadorMensagem.lancarSucesso("FÉRIAS PROVISIONADA COM SUCESSO!");
                        }
                });
        }
       
        /*******************************************/
       
}