Busquedas

Si deseamos filtrar por clasificacion

@Getter
@Setter
public class Cliente {

    @Id
    private Integer idcliente;
    private String cedula;

    @Referenced(documment = "Clasificacioncliente", repository = "com.avbravo.storeejb.repository.ClasificacionclienteRepository",
            field = "idclasificacioncliente", javatype = "Integer", lazy = false)
    private Clasificacioncliente clasificacioncliente;

   }

Si deseamos buscar con paginaciòn

   <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" />

Controller

// <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>




    // <editor-fold defaultstate="collapsed" desc="move">

    @Override
    public void move() {

        try {

            Document doc;
            switch (loginController.get("searchcliente")) {
                case "_init":
                    clienteList = clienteRepository.findPagination(page, rowPage);

                    break;
                case "_autocomplete":
                    //no se realiza ninguna accion 
                    break;

                case "idcliente":
                    doc = new Document("idcliente", lookupStoreejbServices.getIdcliente());

                    clienteList = clienteRepository.findBy(doc);
                    break;
                case "nombre":
                    clienteList = clienteRepository.findRegexInTextPagination("nombre", lookupStoreejbServices.getNombre(), true, page, rowPage, new Document("nombre", -1));
                    break;
                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