/** * 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); } }