Package br.com.lawoffice.web.mb.dados

Source Code of br.com.lawoffice.web.mb.dados.ColaboradorMB

/**
*
*/
package br.com.lawoffice.web.mb.dados;

import java.math.BigDecimal;
import java.util.List;

import javax.annotation.PostConstruct;
import javax.ejb.EJB;
import javax.faces.bean.ManagedBean;
import javax.faces.bean.ViewScoped;

import br.com.lawoffice.dados.PessoaServiceLocal;
import br.com.lawoffice.dominio.Agenda;
import br.com.lawoffice.dominio.Colaborador;
import br.com.lawoffice.dominio.Conta;
import br.com.lawoffice.dominio.Pessoa;
import br.com.lawoffice.web.mb.BaseMB;

/**
*
* Manager Bean para página de /dados/colaborador.xhtml
*
* @author rduarte
*
*/
@ManagedBean
@ViewScoped
public class ColaboradorMB extends BaseMB {

 
  /**
   * serial version uid do mb.
   */
  private static final long serialVersionUID = 8501097824652676049L;


  /**
   * Colaborador para adicionar/remover/editar
   */
  private Colaborador colaborador;
 
 
  /**
   * Colaborador selecionado na lista de cliente da página ( grid )
   */
  private Colaborador colaboradorSelecionado;
 
 
  /**
   * Lista de Colaboradores cadastrado no sistema
   */
  private List<Colaborador> listColaboradores;
 
 
  /**
   * Serviço de dados para {@link Pessoa} que estao no dominio do escritorio.
   */
  @EJB
  private PessoaServiceLocal pessoaServiceLocal;
 
 
  /**
   * inicializa os objetos necessario do mb no contexto JSF.
   */
  @PostConstruct
  public void init(){
    listarColaboradores();
    colaborador = new Colaborador();
  }
 
 
  /**
   * persiste um {@link Colaborador} na base de dados.
   */
  public void adicionarColaborador(){
    pessoaServiceLocal.salvar(colaborador);
    listarColaboradores();
  }
 
 
  /**
   * atualizar um {@link Colaborador} na base de dados.
   */
  public void atualizarColaborador(){
    pessoaServiceLocal.atualizar(colaborador);
  }
 
 
  /**
   * remove o {@link Colaborador} da base de dados.
   */
  public void removerColaborador(){
    if(colaboradorSelecionado != null){
      pessoaServiceLocal.remover(Colaborador.class, colaboradorSelecionado);
      listarColaboradores();
    }     
  }
 
 
  /**
   * recupera o {@link Colaborador} selecionado para edicao.
   */
  public void editarColaborador(){
    if(colaboradorSelecionado != null)
      colaborador = colaboradorSelecionado;
  }
 
 
  /**
   * cria um novo {@link Colaborador} com o seus relacionamentos obrigatorios.
   */
  public void novoColaborador(){
    colaborador = new Colaborador();
    Conta conta = new Conta();
    conta.setSaldo(new BigDecimal(0.0));
    colaborador.setConta(conta);
    conta.setColaborador(colaborador);
    Agenda agenda = new Agenda();
    colaborador.setAgenda(agenda);
    agenda.setColaborador(colaborador);
  }
 
 
  /**
   * lista todos os {@link Colaborador} do escritorio.
   */
  private void listarColaboradores() {
    listColaboradores = pessoaServiceLocal.listar(Colaborador.class);
  }

 
 
 
    // >>>>>>> GETS E SETS do MB <<<<<<<<<<<<<
 
  public Colaborador getColaborador() {
    return colaborador;
  }


  public void setColaborador(Colaborador colaborador) {
    this.colaborador = colaborador;
  }


  public Colaborador getColaboradorSelecionado() {
    return colaboradorSelecionado;
  }


  public void setColaboradorSelecionado(Colaborador colaboradorSelecionado) {
    this.colaboradorSelecionado = colaboradorSelecionado;
  }


  public List<Colaborador> getListColaboradores() {
    return listColaboradores;
  }


  public void setListColaboradores(List<Colaborador> listColaboradores) {
    this.listColaboradores = listColaboradores;
 

}
TOP

Related Classes of br.com.lawoffice.web.mb.dados.ColaboradorMB

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.