Commit cb885c2c by nilu

S43323471 # Client - Incoming Issues (raised by Client) #Want to hide disabled…

S43323471 # Client - Incoming Issues (raised by Client) #Want to hide disabled questions from applicants
parent e8d026ac
......@@ -6,6 +6,7 @@ import java.util.Collection;
import java.util.Comparator;
import java.util.Date;
import java.util.List;
import java.util.Set;
import javax.servlet.http.HttpServletRequest;
import oneit.logging.LoggingArea;
import oneit.objstore.MessageSource;
......@@ -113,22 +114,40 @@ public class Candidate extends BaseCandidate
public boolean cultureCompleted(Job job)
{
int allAnswersCount = getCultureCriteriaAnswersCount();
if(job.showCultureCriteriaSection() && allAnswersCount == job.getCultureCriteriasCount())
if(!job.showCultureCriteriaSection())
{
Filter filter = CultureCriteriaAnswer.SearchByAll().andSelectedQuestion(new IsNotNullFilter<>());
Collection selectedAnswers = pipelineCandidate().toCultureCriteriaAnswers(filter).vals();
return (selectedAnswers.size() == allAnswersCount);
return false;
}
return false;
Set<CultureCriteriaAnswer> selectedAnswers = pipelineCandidate().toCultureCriteriaAnswers(CultureCriteriaAnswer.SearchByAll().andSelectedQuestion(new IsNotNullFilter<>())).uniqueVals();
Set<CultureElement> answeredElements = CultureCriteriaAnswer.pipesCultureCriteriaAnswer(selectedAnswers).toCultureElement().uniqueVals();
Set<CultureElement> applicableElements = CultureCriteria.pipesCultureCriteria(job.getApplicableCultureSet()).toCultureElement().uniqueVals();
return answeredElements.containsAll(applicableElements);
}
public double cultureCompletedPercentage(Job job)
{
return job.showCultureCriteriaSection() ? (getCultureCriteriaAnswersCount() * 100) / job.getCultureCriteriasCount() : 0d;
return job.showCultureCriteriaSection() ? (getApplicableCultureAnswerCount(job) * 100) / job.getApplicableCultureCount(): 0d;
}
public int getApplicableCultureAnswerCount(Job job)
{
int applicableAnswerCount = 0;
for(CultureCriteria cultureCriteria : job.getApplicableCultureSet())
{
for(CultureCriteriaAnswer answer : getCultureCriteriaAnswersSet())
{
if(CollectionUtils.equals(answer.getCultureElement(), cultureCriteria.getCultureElement()))
{
applicableAnswerCount+= 1;
break;
}
}
}
return applicableAnswerCount;
}
public double roleFitCompletedPercentage(Job job)
......
package performa.orm;
import java.util.SortedSet;
import oneit.utils.CollectionUtils;
......@@ -20,16 +19,13 @@ public class CultureCriteriaAnswer extends BaseCultureCriteriaAnswer
{
CultureCriteria criteria = null;
if(job!=null)
if(job != null)
{
SortedSet<CultureCriteria> cultureCriteriasSet = job.getCultureCriteriasSet();
for(CultureCriteria cc: cultureCriteriasSet)
for(CultureCriteria cc: job.getApplicableCultureSet())
{
if(CollectionUtils.equals(cc.getCultureElement(), getCultureElement()))
{
criteria = cc;
break;
}
}
......
......@@ -806,4 +806,17 @@ public class Job extends BaseJob
return getOccupation();
}
public int getApplicableCultureCount()
{
Filter<CultureCriteria> filter = CultureCriteria.SearchByAll().andIsApplicable(new EqualsFilter<>(Boolean.TRUE));
return pipelineJob().toCultureCriterias(filter).uniqueVals().size();
}
public Set<CultureCriteria> getApplicableCultureSet()
{
Filter<CultureCriteria> filter = CultureCriteria.SearchByAll().andIsApplicable(new EqualsFilter<>(Boolean.TRUE));
return pipelineJob().toCultureCriterias(filter).uniqueVals();
}
}
\ No newline at end of file
......@@ -174,7 +174,7 @@ public class JobApplication extends BaseJobApplication
return safeRedirect;
}
for(CultureCriteria cultureCriteria : getJob().getCultureCriteriasSet())
for(CultureCriteria cultureCriteria : getJob().getApplicableCultureSet())
{
boolean available = false;
......
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