PrincipalBean.java 2.98 KB
package br.gov.mc.cadsei.bean;

import javax.annotation.PostConstruct;
import javax.faces.bean.ManagedBean;
import javax.faces.bean.ViewScoped;
import javax.faces.context.FacesContext;
import javax.servlet.http.HttpSession;

import br.gov.arquitetura.bean.BaseBean;
import br.gov.arquitetura.excecao.ExcecaoUtil;
import br.gov.mc.cadsei.entidade.CadProponente;
import br.gov.mc.cadsei.util.SessionUtil;
import br.gov.mc.corporativo.entidade.CrpPessoaFisica;
import br.gov.mc.corporativo.entidade.CrpTipoPessoa;

@ManagedBean(name = "principalBean")
@ViewScoped
public class PrincipalBean extends BaseBean<CadProponente> {

	private static final long serialVersionUID = 1L;
	
	private String nome;
	private String saudacao;
	private String situacaoCadastro;
	
	public String getSaudacao() {
		return saudacao;
	}

	public void setSaudacao(String saudacao) {
		this.saudacao = saudacao;
	}

	public String getNome() {
		return nome;
	}

	public void setNome(String nome) {
		this.nome = nome;
	}

	@Override
	public String getRequiredMessage() {
		return super.getRequiredMessage();
	}

	@Override
	public CadProponente createModel() {
		CadProponente proponente = new CadProponente();
		CrpPessoaFisica crpf = new CrpPessoaFisica();
		crpf.setTipoPessoa(new CrpTipoPessoa(CrpTipoPessoa.FISICA));
		proponente.setPessoaProponente(crpf);
		return proponente;
	}

	@Override
	public String getQualifiedName() {
		return "Proponente";
	}

	@Override
	public boolean isFeminino() {
		return false;
	}
	
	@PostConstruct
	public void init(){
		this.setModel(SessionUtil.getProponenteLogado());
		CadProponente prop = SessionUtil.getProponenteLogado();
		this.setNome(prop.getPessoaProponente().getNome().toUpperCase());
		if(prop.getSituacaoCadastro()!=null){
		    this.setSituacaoCadastro(prop.getSituacaoCadastro().getDescricao());
		}
	}

	public String logout() {
		try {
			HttpSession session = (HttpSession) FacesContext.getCurrentInstance().getExternalContext().getSession(false);
			FacesContext.getCurrentInstance().getExternalContext().getSessionMap().put("proponente", null);
			session.invalidate();
		} catch (Exception e) {
			ExcecaoUtil.tratarExcecao(e);
		}
		return redirect("login_externo.jsf");
	}
	
	public void populaTitulo(){
		try {
			CadProponente prop = SessionUtil.getProponenteLogado();
			this.setNome(prop.getPessoaProponente().getNome().toUpperCase());
			if(prop.getSituacaoCadastro()!=null){
			    this.setSituacaoCadastro(prop.getSituacaoCadastro().getDescricao());
			}
			if(prop.getPessoaProponente().getSexo().toString().equalsIgnoreCase("F")){
				this.setSaudacao("Bem-vinda ");
			} else if(prop.getPessoaProponente().getSexo().toString().equalsIgnoreCase("M")) {
				this.setSaudacao("Bem-vindo ");
			} else {
				this.setSaudacao("Bem-vindo(a) ");
			}
		} catch (Exception e) {
			this.redirect("login_externo.jsf");
		}
	}

	public String getSituacaoCadastro() {
	    return situacaoCadastro;
	}

	public void setSituacaoCadastro(String situacaoCadastro) {
	    this.situacaoCadastro = situacaoCadastro;
	}
	
}