Skip to content

Commit

Permalink
- JIRA JBPM-4126: fixing sorting columns by date
Browse files Browse the repository at this point in the history
  • Loading branch information
salaboy committed Sep 30, 2013
1 parent bb2e238 commit 6f4646e
Show file tree
Hide file tree
Showing 6 changed files with 26 additions and 21 deletions.
Expand Up @@ -17,6 +17,7 @@
package org.jbpm.console.ng.pr.model;

import java.io.Serializable;
import java.util.Date;
import org.jboss.errai.common.client.api.annotations.Portable;

@Portable
Expand All @@ -26,12 +27,12 @@ public class ProcessInstanceSummary implements Serializable {
private String processName;
private String processVersion;
private int state;
private String startTime;
private Date startTime;
private String deploymentId;
private String initiator;

public ProcessInstanceSummary(long id, String processId, String deploymentId, String processName, String processVersion,
int state, String startTime, String initiator) {
int state, Date startTime, String initiator) {
super();
this.id = id;
this.processId = processId;
Expand Down Expand Up @@ -86,11 +87,11 @@ public void setProcessVersion(String processVersion) {
this.processVersion = processVersion;
}

public String getStartTime() {
public Date getStartTime() {
return startTime;
}

public void setStartTime(String startTime) {
public void setStartTime(Date startTime) {
this.startTime = startTime;
}

Expand Down
Expand Up @@ -16,6 +16,7 @@

package org.jbpm.console.ng.pr.model.events;

import java.util.Date;
import org.jboss.errai.common.client.api.annotations.Portable;

@Portable
Expand All @@ -24,13 +25,13 @@ public class ProcessInstanceStyleEvent {
private Long processInstanceId;
private String processDefName;
private String processDefVersion;
private String processInstanceStartDate;
private Date processInstanceStartDate;

public ProcessInstanceStyleEvent(){

}

public ProcessInstanceStyleEvent(Long processInstanceId, String processDefName, String processDefVersion, String processInstanceStartDate) {
public ProcessInstanceStyleEvent(Long processInstanceId, String processDefName, String processDefVersion, Date processInstanceStartDate) {
this.processInstanceId = processInstanceId;
this.processDefName = processDefName;
this.processDefVersion = processDefVersion;
Expand Down Expand Up @@ -61,11 +62,11 @@ public void setProcessDefVersion(String processDefVersion) {
this.processDefVersion = processDefVersion;
}

public String getProcessInstanceStartDate() {
public Date getProcessInstanceStartDate() {
return processInstanceStartDate;
}

public void setProcessInstanceStartDate(String processInstanceStartDate) {
public void setProcessInstanceStartDate(Date processInstanceStartDate) {
this.processInstanceStartDate = processInstanceStartDate;
}

Expand Down
Expand Up @@ -16,10 +16,8 @@

package org.jbpm.console.ng.pr.backend.server;

import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Collection;
import java.util.Date;
import java.util.List;
import org.jbpm.kie.services.impl.model.ProcessInstanceDesc;
import org.jbpm.console.ng.pr.model.ProcessInstanceSummary;
Expand All @@ -38,11 +36,9 @@ public static Collection<ProcessInstanceSummary> adaptCollection(Collection<Proc
}

public static ProcessInstanceSummary adapt(ProcessInstanceDesc processInstance) {
Date date = processInstance.getDataTimeStamp();
String formattedDate = new SimpleDateFormat("d/MMM/yy HH:mm:ss").format(date);
return new ProcessInstanceSummary(processInstance.getId(), processInstance.getProcessId(),
processInstance.getDeploymentId(), processInstance.getProcessName(), processInstance.getProcessVersion(),
processInstance.getState(), formattedDate, processInstance.getInitiator());
processInstance.getState(), processInstance.getDataTimeStamp(), processInstance.getInitiator());
}

public static Collection<String> collectActiveSignals(Collection<NodeInstance> activeNodes) {
Expand Down
Expand Up @@ -23,10 +23,9 @@
import com.google.gwt.safehtml.shared.SafeHtmlBuilder;
import com.google.gwt.user.client.Window;
import com.google.gwt.user.client.ui.HTML;
import com.google.gwt.view.client.HasData;
import com.google.gwt.view.client.ListDataProvider;
import com.google.gwt.view.client.ProvidesKey;
import java.util.ArrayList;
import java.util.Date;
import javax.enterprise.event.Event;
import javax.enterprise.event.Observes;
import org.jboss.errai.common.client.api.RemoteCallback;
Expand Down Expand Up @@ -261,7 +260,7 @@ public Position getPosition() {
return Position.EAST;
}

private void changeStyleRow(long processInstanceId, String processDefName, String processDefVersion, String startTime) {
private void changeStyleRow(long processInstanceId, String processDefName, String processDefVersion, Date startTime) {
processInstanceStyleEvent.fire(new ProcessInstanceStyleEvent(processInstanceId, processDefName, processDefVersion, startTime));
}

Expand Down
Expand Up @@ -41,6 +41,7 @@
import com.google.gwt.dom.client.BrowserEvents;
import com.google.gwt.event.dom.client.ClickEvent;
import com.google.gwt.event.dom.client.ClickHandler;
import com.google.gwt.i18n.client.DateTimeFormat;
import com.google.gwt.safehtml.shared.SafeHtmlBuilder;
import com.google.gwt.user.cellview.client.Column;
import com.google.gwt.user.cellview.client.ColumnSortEvent.ListHandler;
Expand All @@ -54,6 +55,7 @@
import com.google.gwt.view.client.MultiSelectionModel;
import com.google.gwt.view.client.SelectionChangeEvent;
import com.google.gwt.view.client.SelectionModel;
import java.util.Date;
import org.jboss.errai.ui.shared.api.annotations.DataField;
import org.jboss.errai.ui.shared.api.annotations.Templated;
import org.jbpm.console.ng.pr.client.i18n.Constants;
Expand Down Expand Up @@ -390,15 +392,17 @@ public int compare( ProcessInstanceSummary o1,
Column<ProcessInstanceSummary, String> startTimeColumn = new Column<ProcessInstanceSummary, String>( new TextCell() ) {
@Override
public String getValue( ProcessInstanceSummary object ) {
return object.getStartTime();
Date expirationTime = object.getStartTime();
DateTimeFormat format = DateTimeFormat.getFormat("dd/MM/yyyy HH:mm");
return format.format(expirationTime);
}
};
startTimeColumn.setSortable( true );
sortHandler.setComparator( startTimeColumn, new Comparator<ProcessInstanceSummary>() {
@Override
public int compare( ProcessInstanceSummary o1,
ProcessInstanceSummary o2 ) {
return Long.valueOf( o1.getStartTime() ).compareTo( Long.valueOf( o2.getStartTime() ) );
return o1.getStartTime().compareTo( o2.getStartTime() );
}
} );
processInstanceListGrid.addColumn( startTimeColumn, new ResizableHeader( constants.Start_Date(), processInstanceListGrid,
Expand Down
Expand Up @@ -16,6 +16,8 @@
package org.jbpm.console.ng.pr.client.util;

import com.github.gwtbootstrap.client.ui.DataGrid;
import com.google.gwt.i18n.client.DateTimeFormat;
import java.util.Date;
import org.jbpm.console.ng.pr.model.ProcessInstanceSummary;
import org.jbpm.console.ng.pr.model.ProcessSummary;

Expand All @@ -30,7 +32,7 @@ public class DataGridUtils {
public static Long newProcessInstanceId = null;
public static String newProcessInstanceDefName = null;
public static String newProcessInstanceDefVersion = null;
public static String newProcessInstanceStartDate = null;
public static Date newProcessInstanceStartDate = null;

public static void paintRowSelected(DataGrid<ProcessSummary> myProcessDefListGrid, String nameProcessDef, String versionProcessDef) {
for (int i = 0; i < myProcessDefListGrid.getRowCount(); i++) {
Expand All @@ -57,7 +59,7 @@ public static void paintRowSelected(DataGrid<ProcessSummary> myProcessDefListGri
}

public static void paintInstanceRowSelected(DataGrid<ProcessInstanceSummary> myProcessInstanceListGrid, String nameProcessDef,
String versionProcessDef, String startDateInstance) {
String versionProcessDef, Date startDateInstance) {
for (int i = 0; i < myProcessInstanceListGrid.getRowCount(); i++) {
boolean nameMatch = false;
boolean versionMatch = false;
Expand All @@ -69,7 +71,9 @@ public static void paintInstanceRowSelected(DataGrid<ProcessInstanceSummary> myP
if (myProcessInstanceListGrid.getRowElement(i).getCells().getItem(j).getInnerText().equals(versionProcessDef)) {
versionMatch = true;
}
if (myProcessInstanceListGrid.getRowElement(i).getCells().getItem(j).getInnerText().equals(startDateInstance)) {
DateTimeFormat format = DateTimeFormat.getFormat("dd/MM/yyyy HH:mm");
String date = format.format(startDateInstance);
if (myProcessInstanceListGrid.getRowElement(i).getCells().getItem(j).getInnerText().equals(date)) {
startDateMatch = true;
}

Expand Down

0 comments on commit 6f4646e

Please sign in to comment.