Commit 65f28430 by chenith Committed by Harsh Shah

Added Culture Fit and Requirement Fit ratings to job application.

parent 1759afa7
...@@ -10,10 +10,15 @@ import oneit.utils.CollectionUtils; ...@@ -10,10 +10,15 @@ import oneit.utils.CollectionUtils;
import oneit.utils.ObjectTransform; import oneit.utils.ObjectTransform;
import oneit.utils.filter.CollectionFilter; import oneit.utils.filter.CollectionFilter;
import oneit.utils.filter.Filter; import oneit.utils.filter.Filter;
import oneit.utils.math.MathUtils;
import oneit.utils.math.Rounding;
import oneit.utils.parsers.FieldException; import oneit.utils.parsers.FieldException;
import performa.orm.types.AppProcessOption; import performa.orm.types.AppProcessOption;
import performa.orm.types.ApplicationStatus; import performa.orm.types.ApplicationStatus;
import performa.orm.types.CriteriaType; import performa.orm.types.CriteriaType;
import performa.orm.types.CultureClass;
import performa.orm.types.Importance;
import performa.utils.AnalysisEngine;
public class JobApplication extends BaseJobApplication public class JobApplication extends BaseJobApplication
...@@ -250,13 +255,13 @@ public class JobApplication extends BaseJobApplication ...@@ -250,13 +255,13 @@ public class JobApplication extends BaseJobApplication
public int getCulturePercentage() public int getCulturePercentage()
{ {
return 90; return AnalysisEngine.getCultureFit(getCultureCriteriaAnswersSet()).get(null).intValue();
} }
public int getCriteriaPercentage () public int getCriteriaPercentage ()
{ {
return 95; return AnalysisEngine.getRequirementFit(getAssessmentCriteriaAnswersSet()).get(null).intValue();
} }
......
...@@ -53,13 +53,13 @@ ...@@ -53,13 +53,13 @@
<div class="col-sm-4 col-xs-12 text-center" href="#2a" data-toggle="tab" id="progress2"> <div class="col-sm-4 col-xs-12 text-center" href="#2a" data-toggle="tab" id="progress2">
<label class="progress-label">culture fit</label> <label class="progress-label">culture fit</label>
<div class="percent-green fixed-width"> <div class="percent-green fixed-width">
<p style="display:none;">83%</p> <p style="display:none;"><oneit:toString value="<%= jobApplication.getCulturePercentage() %>" mode="PercentageWholeNumber" /></p>
</div> </div>
</div> </div>
<div class="col-sm-4 col-xs-12 text-center" href="#4a" data-toggle="tab" id="progress3"> <div class="col-sm-4 col-xs-12 text-center" href="#4a" data-toggle="tab" id="progress3">
<label class="progress-label">requirements</label> <label class="progress-label">requirements</label>
<div class="percent-blue fixed-width"> <div class="percent-blue fixed-width">
<p style="display:none;">70%</p> <p style="display:none;"><oneit:toString value="<%= jobApplication.getCriteriaPercentage() %>" mode="PercentageWholeNumber" /></p>
</div> </div>
</div> </div>
</div> </div>
...@@ -298,8 +298,150 @@ ...@@ -298,8 +298,150 @@
</div> </div>
</div> </div>
<div class="tab-pane" id="2a"> <div class="tab-pane" id="2a">
<%
Map<CultureClass, Long> cultureFitData = AnalysisEngine.getCultureFit(jobApplication.getCultureCriteriaAnswersSet());
for(CultureClass cClass: cultureFitData.keySet())
{
if(cClass==null)
{
continue;
}
Long rating = cultureFitData.get(cClass);
%>
<div class="main-pro-bar">
<div class="pro-bar">
<span class="appli-label"><oneit:toString value="<%= cClass %>" mode="EscapeHTML"/></span>
<span class="appli-percen"><oneit:toString value="<%= rating %>" mode="PercentageWholeNumber" /></span>
<span class="appli-progress-bar">
<div class="progress">
<div class="progress-bar" role="progressbar" aria-valuenow="<%= rating %>" aria-valuemin="0" aria-valuemax="100" style="width:<%= rating %>%"></div>
</div>
</span>
<span class="expand-box">
<span class="hasarrow"><img src="images/select-down-arrow.png" /></span>
</span>
</div>
<div class="expand-hide-tag">
<div class="tab-row">
<div class="tab-view-label">
Achievement
</div>
<div class="tab-view-side">
<div class="result-want">
<div class="result">Not results focused</div>
<div class="wants">Wants results</div>
</div>
<div class="result-bar">
<ul>
<li class="red-b" style="width: 26.5%;"></li>
<li class="yellow-b" style="width: 26.5%;"></li>
<li class="green-b" style="width: 47%;"></li>
</ul>
<span class="triangle-arrow" style="left: 48%;"></span>
</div>
<div class="like-strive">Likely to strive to achive results</div>
</div>
</div>
<div class="tab-row">
<div class="tab-view-label">
Remuneration
</div>
<div class="tab-view-side">
<div class="result-want">
<div class="result">Low concern</div>
<div class="wants">High concern</div>
</div>
<div class="result-bar">
<ul>
<li class="red-b" style="width: 23.2%;"></li>
<li class="yellow-b" style="width: 57.6%;"></li>
<li class="green-b" style="width: 19%;"></li>
</ul>
<span class="triangle-arrow" style="left: 72%;"></span>
</div>
<div class="like-strive">Financial reward is less of a motivation than many other factors</div>
</div>
</div>
</div>
</div>
<%
}
%>
</div> </div>
<div class="tab-pane" id="3a"> <div class="tab-pane" id="3a">
<%
Map<Importance, Long> requirementFitData = AnalysisEngine.getRequirementFit(jobApplication.getAssessmentCriteriaAnswersSet());
for(Importance importance: requirementFitData.keySet())
{
if(importance==null)
{
continue;
}
Long rating = requirementFitData.get(importance);
%>
<div class="main-pro-bar">
<div class="pro-bar">
<span class="appli-label"><oneit:toString value="<%= importance %>" mode="EscapeHTML"/></span>
<span class="appli-percen"><oneit:toString value="<%= rating %>" mode="PercentageWholeNumber" /></span>
<span class="appli-progress-bar">
<div class="progress">
<div class="progress-bar" role="progressbar" aria-valuenow="<%= rating %>" aria-valuemin="0" aria-valuemax="100" style="width:<%= rating %>%"></div>
</div>
</span>
<span class="expand-box">
<span class="hasarrow"><img src="images/select-down-arrow.png" /></span>
</span>
</div>
<div class="expand-hide-tag">
<div class="tab-row">
<div class="tab-view-label">
Achievement
</div>
<div class="tab-view-side">
<div class="result-want">
<div class="result">Not results focused</div>
<div class="wants">Wants results</div>
</div>
<div class="result-bar">
<ul>
<li class="red-b" style="width: 26.5%;"></li>
<li class="yellow-b" style="width: 26.5%;"></li>
<li class="green-b" style="width: 47%;"></li>
</ul>
<span class="triangle-arrow" style="left: 48%;"></span>
</div>
<div class="like-strive">Likely to strive to achive results</div>
</div>
</div>
<div class="tab-row">
<div class="tab-view-label">
Remuneration
</div>
<div class="tab-view-side">
<div class="result-want">
<div class="result">Low concern</div>
<div class="wants">High concern</div>
</div>
<div class="result-bar">
<ul>
<li class="red-b" style="width: 23.2%;"></li>
<li class="yellow-b" style="width: 57.6%;"></li>
<li class="green-b" style="width: 19%;"></li>
</ul>
<span class="triangle-arrow" style="left: 72%;"></span>
</div>
<div class="like-strive">Financial reward is less of a motivation than many other factors</div>
</div>
</div>
</div>
</div>
<%
}
%>
</div> </div>
<div class="tab-pane" id="4a"> <div class="tab-pane" id="4a">
</div> </div>
......
...@@ -264,14 +264,23 @@ ...@@ -264,14 +264,23 @@
</span> </span>
</div> </div>
<div class="detail-box"> <div class="detail-box">
<div class="detail-row"> <%
<div class="detail-label">Category</div> Map<CultureClass, Long> cultureFitData = AnalysisEngine.getCultureFit(jobApplication.getCultureCriteriaAnswersSet());
<div class="detail-no green">91%</div>
</div> for(CultureClass cClass: cultureFitData.keySet())
<div class="detail-row"> {
<div class="detail-label">Category</div> if(cClass==null)
<div class="detail-no green">88%</div> {
</div> continue;
}
%>
<div class="detail-row">
<div class="detail-label"><oneit:toString value="<%= cClass %>" mode="EscapeHTML"/></div>
<div class="detail-no green"><oneit:toString value="<%= cultureFitData.get(cClass) %>" mode="PercentageWholeNumber" /></div>
</div>
<%
}
%>
</div> </div>
<div class="jcc"> <div class="jcc">
<img src="images/criteria-icon.svg"> Requirements <img src="images/criteria-icon.svg"> Requirements
...@@ -285,14 +294,23 @@ ...@@ -285,14 +294,23 @@
</span> </span>
</div> </div>
<div class="detail-box"> <div class="detail-box">
<div class="detail-row"> <%
<div class="detail-label">Category</div> Map<Importance, Long> requirementFitData = AnalysisEngine.getRequirementFit(jobApplication.getAssessmentCriteriaAnswersSet());
<div class="detail-no green">93%</div>
</div> for(Importance importance: requirementFitData.keySet())
<div class="detail-row"> {
<div class="detail-label">Category</div> if(importance==null)
<div class="detail-no green">88%</div> {
</div> continue;
}
%>
<div class="detail-row">
<div class="detail-label"><oneit:toString value="<%= importance %>" mode="EscapeHTML"/></div>
<div class="detail-no green"><oneit:toString value="<%= requirementFitData.get(importance) %>" mode="PercentageWholeNumber" /></div>
</div>
<%
}
%>
</div> </div>
</div> </div>
</oneit:button> </oneit:button>
......
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