Commit e708fd06 by chenith

Added custom sort order for list Jobstatus.

parent c00303f3
......@@ -37,11 +37,18 @@ public class JobStatus extends AbstractEnumerated
return allJobStatuss;
}
private transient Integer ClientSortOrder;
private JobStatus (String name, String value, String description, boolean disabled)
{
super (name, value, description, disabled);
}
public Integer getClientSortOrder()
{
return ClientSortOrder;
}
public static final Comparator COMPARE_BY_POSITION = new CompareEnumByPosition (allJobStatuss);
......@@ -109,6 +116,10 @@ public class JobStatus extends AbstractEnumerated
public static void defineAdditionalData ()
{
OPEN.ClientSortOrder = 1;
COMPLETE.ClientSortOrder = 2;
DRAFT.ClientSortOrder = 4;
FILLED.ClientSortOrder = 3;
}
......@@ -136,6 +147,7 @@ public class JobStatus extends AbstractEnumerated
{
Map attribs = new HashMap ();
attribs.put ("ClientSortOrder", ArrayFormatter.toObject(getClientSortOrder()));
return attribs;
}
......
......@@ -3,10 +3,12 @@
<ROOT>
<CONSTANT package="performa.orm.types" name="JobStatus">
<VALUE name="OPEN" value="OPEN" description="Open"/>
<VALUE name="COMPLETE" value="COMPLETE" description="Closed"/>
<VALUE name="DRAFT" value="DRAFT" description="Draft"/>
<VALUE name="FILLED" value="FILLED" description="Filled"/>
<DATA name="ClientSortOrder" type="Integer"/>
<VALUE name="OPEN" value="OPEN" description="Open" ClientSortOrder="1"/>
<VALUE name="COMPLETE" value="COMPLETE" description="Closed" ClientSortOrder="2"/>
<VALUE name="DRAFT" value="DRAFT" description="Draft" ClientSortOrder="4"/>
<VALUE name="FILLED" value="FILLED" description="Filled" ClientSortOrder="3"/>
</CONSTANT>
</ROOT>
\ No newline at end of file
......@@ -497,6 +497,20 @@ public class Utils
&& ConfigMgr.getKeyfileString(GoogleOAuthLoginFP.GOOGLE_CLIENTSECRET_ATTR_NAME) != null;
}
//to get Job status list sorted for client
public static Collection<JobStatus> getJobStatusesForClient()
{
return CollectionUtils.sort(Arrays.asList(JobStatus.getJobStatusArray()),
new Comparator<JobStatus> () {
@Override
public int compare(JobStatus o1, JobStatus o2)
{
return o1.getClientSortOrder().compareTo(o2.getClientSortOrder());
}
});
}
private static class CompanyUserTransform implements ObjectTransform<CompanyUser, String>
{
static CompanyUserTransform INSTANCE = new CompanyUserTransform();
......
......@@ -73,7 +73,7 @@
</div>
</div>
<%
for (JobStatus jobStatus : JobStatus.getJobStatusArray())
for (JobStatus jobStatus : Utils.getJobStatusesForClient())
{
int jobCount = client.getApplicationCountByStatus(jobStatus);
%>
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment