Commit 3dad7eb5 by Nilu Committed by Harsh Shah

job sorting issue fixed

2) When "Spike Sharpener" was listed under drafts and the Order By was set to "Newest", the list was still not sorted
But when we set the job to open, Order by "Newest" was working again
parent 65f28430
...@@ -626,7 +626,6 @@ public abstract class BaseJob extends BaseBusinessClass ...@@ -626,7 +626,6 @@ public abstract class BaseJob extends BaseBusinessClass
metaInfo.put ("attribHelper", "EnumeratedAttributeHelper"); metaInfo.put ("attribHelper", "EnumeratedAttributeHelper");
metaInfo.put ("dbcol", "job_status"); metaInfo.put ("dbcol", "job_status");
metaInfo.put ("defaultValue", "JobStatus.DRAFT");
metaInfo.put ("mandatory", "true"); metaInfo.put ("mandatory", "true");
metaInfo.put ("name", "JobStatus"); metaInfo.put ("name", "JobStatus");
metaInfo.put ("type", "JobStatus"); metaInfo.put ("type", "JobStatus");
...@@ -901,7 +900,7 @@ public abstract class BaseJob extends BaseBusinessClass ...@@ -901,7 +900,7 @@ public abstract class BaseJob extends BaseBusinessClass
_JobTitle = (String)(HELPER_JobTitle.initialise (_JobTitle)); _JobTitle = (String)(HELPER_JobTitle.initialise (_JobTitle));
_JobDescription = (String)(HELPER_JobDescription.initialise (_JobDescription)); _JobDescription = (String)(HELPER_JobDescription.initialise (_JobDescription));
_JobStatus = (JobStatus)(JobStatus.DRAFT); _JobStatus = (JobStatus)(HELPER_JobStatus.initialise (_JobStatus));
_OpenDate = (Date)(HELPER_OpenDate.initialise (_OpenDate)); _OpenDate = (Date)(HELPER_OpenDate.initialise (_OpenDate));
_ApplyBy = (Date)(HELPER_ApplyBy.initialise (_ApplyBy)); _ApplyBy = (Date)(HELPER_ApplyBy.initialise (_ApplyBy));
_IncludeAssessmentCriteria = (Boolean)(Boolean.TRUE); _IncludeAssessmentCriteria = (Boolean)(Boolean.TRUE);
......
...@@ -36,6 +36,8 @@ public class Job extends BaseJob ...@@ -36,6 +36,8 @@ public class Job extends BaseJob
{ {
super.postInitNewObj(); super.postInitNewObj();
setJobStatus(JobStatus.DRAFT);
initAttribs(); initAttribs();
for(CultureElement cultureElement : CultureElement.searchAll(getTransaction())) for(CultureElement cultureElement : CultureElement.searchAll(getTransaction()))
......
...@@ -32,7 +32,7 @@ ...@@ -32,7 +32,7 @@
<ATTRIB name="JobTitle" type="String" dbcol="job_title" length="500" mandatory="true"/> <ATTRIB name="JobTitle" type="String" dbcol="job_title" length="500" mandatory="true"/>
<ATTRIB name="JobDescription" type="String" dbcol="job_description" mandatory="true"/> <ATTRIB name="JobDescription" type="String" dbcol="job_description" mandatory="true"/>
<ATTRIB name="JobStatus" type="JobStatus" dbcol="job_status" attribHelper="EnumeratedAttributeHelper" mandatory="true" defaultValue="JobStatus.DRAFT"/> <ATTRIB name="JobStatus" type="JobStatus" dbcol="job_status" attribHelper="EnumeratedAttributeHelper" mandatory="true"/>
<ATTRIB name="OpenDate" type="Date" dbcol="open_date"/> <ATTRIB name="OpenDate" type="Date" dbcol="open_date"/>
<ATTRIB name="ApplyBy" type="Date" dbcol="apply_by"/> <ATTRIB name="ApplyBy" type="Date" dbcol="apply_by"/>
<ATTRIB name="IncludeAssessmentCriteria" type="Boolean" dbcol="include_assessment_criteria" mandatory="true" defaultValue="Boolean.TRUE"/> <ATTRIB name="IncludeAssessmentCriteria" type="Boolean" dbcol="include_assessment_criteria" mandatory="true" defaultValue="Boolean.TRUE"/>
......
...@@ -25,6 +25,7 @@ import oneit.utils.transform.param.ErrorTransform; ...@@ -25,6 +25,7 @@ import oneit.utils.transform.param.ErrorTransform;
import oneit.utils.transform.param.ORMTransform; import oneit.utils.transform.param.ORMTransform;
import oneit.utils.transform.param.PrefixCompoundTransform; import oneit.utils.transform.param.PrefixCompoundTransform;
import performa.orm.types.AppSortOption; import performa.orm.types.AppSortOption;
import performa.orm.types.JobStatus;
/** /**
* *
...@@ -95,32 +96,41 @@ public class Utils ...@@ -95,32 +96,41 @@ public class Utils
//to sort jobs list //to sort jobs list
public static List<Job> getJobsSorted(Job[] jobs, JobSortOption jobSortOption) public static List<Job> getJobsSorted(Job[] jobs, JobSortOption jobSortOption, JobStatus jobStatus)
{ {
ObjectTransform transform = Job.pipesJob().toObjectCreated(); ObjectTransform transform = Job.pipesJob().toObjectCreated();
Comparator comparator = CollectionUtils.DEFAULT_COMPARATOR; Comparator comparator = CollectionUtils.DEFAULT_COMPARATOR;
if(jobSortOption==JobSortOption.OLDEST) if(jobSortOption == JobSortOption.OLDEST || jobSortOption == JobSortOption.NEWEST)
{ {
transform = Job.pipesJob().toOpenDate(); if(jobStatus == null)
comparator = CollectionUtils.DEFAULT_COMPARATOR; {
transform = Job.pipesJob().toObjectCreated();
} }
else if(jobSortOption==JobSortOption.NEWEST) else if(jobStatus == JobStatus.OPEN)
{ {
transform = Job.pipesJob().toOpenDate(); transform = Job.pipesJob().toOpenDate();
comparator = CollectionUtils.reverse(CollectionUtils.DEFAULT_COMPARATOR);
} }
else if(jobSortOption==JobSortOption.CLOSING_SOON) else
{
transform = Job.pipesJob().toLastStatusChangeDate();
}
comparator = jobSortOption == JobSortOption.OLDEST ?
CollectionUtils.DEFAULT_COMPARATOR :
CollectionUtils.reverse(CollectionUtils.DEFAULT_COMPARATOR);
}
else if(jobSortOption == JobSortOption.CLOSING_SOON)
{ {
transform = Job.pipesJob().toApplyBy(); transform = Job.pipesJob().toApplyBy();
comparator = CollectionUtils.DEFAULT_COMPARATOR_NULLS_FIRST; comparator = CollectionUtils.DEFAULT_COMPARATOR_NULLS_FIRST;
} }
else if(jobSortOption==JobSortOption.ALPHA_A_Z) else if(jobSortOption == JobSortOption.ALPHA_A_Z)
{ {
transform = Job.pipesJob().toJobTitle(); transform = Job.pipesJob().toJobTitle();
comparator = CollectionUtils.CASE_INSENSITIVE_COMPARATOR; comparator = CollectionUtils.CASE_INSENSITIVE_COMPARATOR;
} }
else if(jobSortOption==JobSortOption.ALPHA_Z_A) else if(jobSortOption == JobSortOption.ALPHA_Z_A)
{ {
transform = Job.pipesJob().toJobTitle(); transform = Job.pipesJob().toJobTitle();
comparator = CollectionUtils.reverse(CollectionUtils.CASE_INSENSITIVE_COMPARATOR); comparator = CollectionUtils.reverse(CollectionUtils.CASE_INSENSITIVE_COMPARATOR);
......
...@@ -35,7 +35,7 @@ ...@@ -35,7 +35,7 @@
process.setAttribute(jobListName, jobs); process.setAttribute(jobListName, jobs);
} }
List<Job> sortedJobs = Utils.getJobsSorted(jobs, jobSortOpt); List<Job> sortedJobs = Utils.getJobsSorted(jobs, jobSortOpt, jobStatus);
process.setAttribute("JobSortOption", jobSortOpt); process.setAttribute("JobSortOption", jobSortOpt);
%> %>
......
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