Filtrar por atributos referenciados
Last updated
Was this helpful?
Last updated
Was this helpful?
Tenemos un entity referenciado y deseamos filtrarlo por clasificacion de cliente.
Referenciados:
<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>
// <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>
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>