Filtrar por atributos referenciados

Referenciados:

Cliente

Clasificacioncliente

<b:column medium-screen="8">
  <p:outputLabel value="#{msg['field.clasificacioncliente']}"/>                                 
  <e:autocompleteclasificacioncliente listener="#{clienteController.searchBy('clasificacioncliente')}"
                    value="#{clienteController.lookupStoreejbServices.clasificacioncliente}"
                    itemLabel="#{p.descripcion}"
                    dropdown="true"
                    required="false"
                    minQueryLength="0"
                    field="descripcion"
                    update=" :form:dataTable" />
 </b:column>

Para el listener

 // <editor-fold defaultstate="collapsed" desc="searchBy(String string)">
    @Override
    public String searchBy(String string) {
        try {

            loginController.put("searchcliente", string);

            writable = true;
            move();

        } catch (Exception e) {
            JsfUtil.errorMessage("searchBy()" + e.getLocalizedMessage());
        }
        return "";
    }// </editor-fold>

En el move

Usamos el findPagination

clienteList = clienteRepository.findPagination(doc, page, rowPage, new Document("nombre", -1));
    public void move() {

        try {

            Document doc;
            switch (loginController.get("searchcliente")) {
               case "clasificacioncliente":
                    doc = new Document("clasificacioncliente.idclasificacioncliente", lookupStoreejbServices.getClasificacioncliente().getIdclasificacioncliente());
                    clienteList = clienteRepository.findPagination(doc, page, rowPage, new Document("nombre", -1));
                    break;

                default:

                    clienteList = clienteRepository.findPagination(page, rowPage);
                    break;
            }

            clienteFiltered = clienteList;

            clienteDataModel = new ClienteDataModel(clienteList);

        } catch (Exception e) {
            JsfUtil.errorMessage("move() " + e.getLocalizedMessage());
        }
    }// </editor-fold>

Last updated