Package br.com.buyFast.controller.adminController

Source Code of br.com.buyFast.controller.adminController.BankController

package br.com.buyFast.controller.adminController;

import java.io.Serializable;

import javax.annotation.Resource;
import javax.faces.model.DataModel;
import javax.faces.model.ListDataModel;

import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.springframework.context.annotation.Scope;
import org.springframework.stereotype.Controller;

import br.com.buyFast.model.Bank;
import br.com.buyFast.service.Facade;
import br.com.buyFast.service.ServiceException;
import br.com.buyFast.util.FacesUtil;

/**
* Representa o controller para o gerenciamento de bancos.
*/
@Controller("bankController")
@Scope("session")
public class BankController implements Serializable {

  /**
   * {@link Serializable}.
   */
  private static final long serialVersionUID = 1L;
 
  /**
   * Apresenta a mensagem na aplicação.
   */
  private Log logger = LogFactory.getLog(BankController.class);

  /**
   * Camada de serviço da aplicação.
   */
  @Resource
  private Facade facade;
 
  /**
   * Representa o banco.
   */
  private Bank bank;
 
  /**
   * Modelo de lista e bancos.
   */
  private DataModel model;

  /**
   * Ir para a página de gerenciamento de bancos.
   * @return
   */
  public String manageBank() {
   
    this.bank = new Bank();
   
    return "bankPage";
  }
 
  /**
   * Persiste o banco na base de dados.
   * @return
   */
  public String save() {
    logger.info("Salvando banco...");
    try {
      if (this.bank.getId() != null) {
        facade.updateBank(this.bank);
      } else {
        facade.saveBank(this.bank);
      }
    } catch (ServiceException e) {
      logger.error("Erro ao salvar banco.");
      FacesUtil.mensErro("", FacesUtil.getMessage("adminBankMessageErrorSave"));
     
      return null;
    }
   
    this.bank = new Bank();
   
    FacesUtil.mensInfo("", FacesUtil.getMessage("adminBankMessageSuccess"));
   
    return null;
  }
 
  /**
   * Edit um banco.
   * @return
   */
  public String edit() {
    this.bank = getSelectedBank();
    return null;
  }
 
  /**
   * Obter o banco selecionado na tabela.
   * @return O banco selecionado na tabela.
   */
  private Bank getSelectedBank() {
    return (Bank) model.getRowData();
  }
 
  /**
   * Remove o banco da base de dados.
   * @return
   */
  public String remove() {
    this.bank = getSelectedBank();
    try {
      logger.info("Removendo banco ...");
      facade.removeBank(this.bank);
    } catch (ServiceException e) {
      logger.error("Erro ao remover banco.");
      FacesUtil.mensErro("", FacesUtil.getMessage("adminBankMessageErrorRemove"));
    }
   
    this.bank = new Bank();
   
    FacesUtil.mensInfo("", FacesUtil.getMessage("adminBankMessageSuccess"));
   
    return null;
  }
 
  /**
   * Obter a lista de bancos da base de dados.
   * @return O conjunto de Bancos da base de dados.
   */
  public DataModel getAllBank() {
    try {
      model = new ListDataModel(facade.getAllBanks());
      return model;
    } catch (ServiceException e) {
      logger.error("Erro ao obter lista de bancos.");
      FacesUtil.mensErro("", FacesUtil.getMessage("adminBankMessageErrorGetListBank"));
     
      model = new ListDataModel();
      return model;
    }
  }
 
  //Getters and Setters
 
  /**
   * Obter o banco.
   * @return O banco.
   */
  public Bank getBank() {
    return bank;
  }

  /**
   * Ajustar o banco.
   * @param bank O banco.
   */
  public void setBank(Bank bank) {
    this.bank = bank;
  }

  /**
   * Ajustar a camada de serviço da aplicação.
   * @param facade A camada de serviço da aplicação.
   */
  public void setFacade(Facade facade) {
    this.facade = facade;
  }
 
}
TOP

Related Classes of br.com.buyFast.controller.adminController.BankController

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.