private List<Usuarios> listByFilterUser;
Los metodos van a ir hasta abajo simplemente por darle un orden de acuerdo
public List<Usuarios> getListByFilterUser() {
return listByFilterUser;
}
public void setListByFilterUser(List<Usuarios> listByFilterUser) {
this.listByFilterUser = listByFilterUser;
}
Y nuevamente agregamos otra funcion al dataTable que es filteredValue que es el valor filtrado que esta en el mangedBean de acuerdo y al column agreamos otra funcion filterBy que es "filtrar por" de acuerdo al campo donde se ponga sera la busqueda de filtracion miren el ejemplo:
<h2>Lista de usuarios</h2>
<h:form id="formListAll">
<p:growl id="msjgral" showDetail="true" sticky="false" />
<p:dataTable id="tableListAll" var="item" value="#{managedBeanUser.all}" paginator="true" rows="5" rowsPerPageTemplate="10, 20, 30, 40, 50, 60, 70, 80, 90, 100"
selection="#{managedBeanUser.user}" selectionMode="single" rowKey="#{item.idusuarios}" filteredValue="#{managedBeanUser.listByFilterUser}">
<f:facet name="header">
Lista de Usuarios
</f:facet>
<p:column headerText="Nombre" filterBy="nombres">
<h:outputText value="#{item.nombres}"/>
</p:column>
<p:column headerText="Apellido Materno" filterBy="ap">
<h:outputText value="#{item.ap}"/>
</p:column>
<p:column headerText="Apellido Paterno" filterBy="am">
<h:outputText value="#{item.am}"/>
</p:column>
<p:column headerText="E-mail">
<h:outputText value="#{item.email}"/>
</p:column>
<f:facet name="footer">
<p:commandButton process="tableListAll" update=":formListAll:usersDetail" icon="ui-icon-search" value="Ver" oncomplete="PF('ty').show()" />
</f:facet>
</p:dataTable>
<p:dialog header="Informacion de Usuario" widgetVar="ty" modal="true" showEffect="explode" hideEffect="explode" resizable="false">
<p:outputPanel id="usersDetail" style="text-align:center;">
<h:panelGrid columns="2">
<p:outputLabel value="Nombre"/>
<h:outputText value="#{managedBeanUser.user.nombres}" />
<p:outputLabel value="Apellido Paterno"/>
<h:outputText value="#{managedBeanUser.user.ap}" />
<p:outputLabel value="Apellido Materno"/>
<h:outputText value="#{managedBeanUser.user.am}" />
<p:outputLabel value="Email"/>
<h:outputText value="#{managedBeanUser.user.email}" />
<p:outputLabel value="Direccion"/>
<h:outputText value="#{managedBeanUser.user.direccion}" />
<p:outputLabel value="Fecha de Nacimiento"/>
<h:outputText value="#{managedBeanUser.user.fechaNacimiento}" />
<p:outputLabel value="Sexo"/>
<h:outputText value="#{managedBeanUser.user.sexo}" />
</h:panelGrid>
</p:outputPanel>
</p:dialog>
</h:form>
Y quedaria asi:
No hay comentarios:
Publicar un comentario