<p:datatable> expandableRowGroups
Con el parametro expandableRowGroups podemos colapsar la fila de un datatable.
Permite agruparlos por siglas del agente.
sortBy="#{item.agente.siglas}"
expandableRowGroups="true"
@Getter
@Setter
public class Consola {
private String titulo;
private String nivel;
private Agente agente;
}
Permite que se agrupen varios registros del mismo agente para desplegarlo.
if (horasmes != 150) {
Consola consola = new Consola();
consola.setNivel("horames");
consola.setAgente(reservadoagenteList.get(row).getAgente());
String vacaciones = "";
if (verificarVacacionesAgente(a)) {
vacaciones = " (Tiene vacaciones este mes)";
}
consola.setTitulo("De las 150 horas mensuales tiene " + horasmes + " " + vacaciones);
consolaList.add(consola);
}
if (numeroDiasMes == 30 && cantidad0 != 11) {
Consola consola = new Consola();
consola.setNivel("cantidadturnos");
consola.setAgente(reservadoagenteList.get(row).getAgente());
consola.setTitulo("Mes de 30 dias debe tener 11 ceros y tiene " + (cantidad0 > numeroDiasMes ? numeroDiasMes : cantidad0));
consolaList.add(consola);
}
<p:dataTable var="item" value="#{reservadoController.consolaList}"
sortBy="#{item.agente.siglas}"
expandableRowGroups="true"
rowIndexVar="rowIx"
rowStyleClass="#{item.nivel eq 'reglasturnos' ? 'coloredred' : ''}"
id="consola">
<p:headerRow>
<p:column >
<h:outputText value="#{item.agente.nombre}" />
<p:outputLabel value=" "/>
<h:outputText value="(#{item.agente.siglas})" />
</p:column>
</p:headerRow>
<p:column headerText="#{msg['field.titulo']}">
<h:outputText value="#{item.titulo}" />
</p:column>
</p:dataTable>
Colapsada
Expandida
Last updated
Was this helpful?