/**
  * Deve ser utilizado somente em filtros de tabela, pos a conta bancaria não é inserida, somente
  * sua label.
  *
  * @param usuario
  * @return
  */
 public List<SelectItem> getContaBancariaToTable(Usuario usuario, FacesContext fc) {
   List<ContaBancaria> contas = this.contaBancariaBean.buscarContaBancariasPorUsuario(usuario);
   Collections.sort(contas);
   List<SelectItem> toReturn = new ArrayList<SelectItem>();
   toReturn.add(new SelectItem(null, MensagemUtils.getResourceBundle("selecione", fc)));
   for (ContaBancaria cb : contas) {
     toReturn.add(
         new SelectItem(
             cb.getId(),
             StringUtils.substring(cb.getLabel(), 0, CARACTERES_DETALHE_MOVIMENTACAO_LIMIT)));
   }
   return toReturn;
 }
 @Override
 public Object getAsObject(FacesContext fc, UIComponent uic, String value) {
   if (value == null || value.trim().equals("")) {
     return value;
   }
   TipoMovimentacao[] enumS = TipoMovimentacao.values();
   for (TipoMovimentacao e : enumS) {
     if (e.toString().equals(value)) {
       return e;
     }
   }
   FacesMessage msg = new FacesMessage(MensagemUtils.getResourceBundle("enumConverterErro", fc));
   msg.setSeverity(FacesMessage.SEVERITY_FATAL);
   throw new ConverterException(msg);
 }
 @Override
 public String getAsString(FacesContext fc, UIComponent uic, Object value) {
   if (value == null) {
     return null;
   } else if (value.equals("")) {
     return "";
   } else if (value instanceof String) {
     String enumDis = (String) value;
     TipoMovimentacao[] enumS = TipoMovimentacao.values();
     for (TipoMovimentacao e : enumS) {
       if (e.toString().equals(enumDis)) {
         return e.toString();
       }
     }
   }
   try {
     TipoMovimentacao e = (TipoMovimentacao) value;
     return e.toString();
   } catch (ClassCastException e) {
     FacesMessage msg = new FacesMessage(MensagemUtils.getResourceBundle("enumConverterErro", fc));
     msg.setSeverity(FacesMessage.SEVERITY_FATAL);
     throw new ConverterException(msg);
   }
 }