У меня есть PrimeFaces DataTable так:р: DataTable Время сортировки
<p:dataTable
id="datatable_current_month_timesheets"
value="#{timesheetBean.currentMonthTimesheets}" var="item">
<p:column headerText="starttimeDate" sortBy="#{item.starttime}">
<h:outputText value="#{item.starttime}">
<f:convertDateTime pattern="EEE, dd.MM.yyyy" />
</h:outputText>
</p:column>
<p:column headerText="starttimeTime" sortBy="#{item.starttime}"> //how to sort this?
<h:outputText
value="#{item.starttime}">
<f:convertDateTime pattern="HH:mm" />
</h:outputText>
</p:column>
<p:column headerText="timeGap" sortBy="#{item.starttime}"> //how to sort this?
<h:outputText
value="#{timesheetBean.calculateTimeGap(item)}">
<f:convertDateTime pattern="HH:mm" />
</h:outputText>
</p:column>
</p:dataTable>
Первая колонка получить sortet прямо с момента его упорядочиваются по дате и он не делает мне никаких проблем. Второй столбец, однако, имеет в основном те же значения, что и первый, но только время в часах: минуты. Третий столбец выполняет некоторые вычисления с течением времени, а также выбирает время. Поскольку я не сохраняю эти значения, я не знаю, как сортировать это по времени!
Пример будет 12:00 после 07:00 и до 14:35. Как я могу это достичь?
Звучит так, как вам нужно использовать пользовательский sortFunction на столбце p: column –
, но как бы я мог сортировать вещи, если значение динамически генерируется? могу ли я сортировать, не указав «sortBy»? – ImKindaLrning