Commit dbeb12ff authored by Hasitha Samarasekara's avatar Hasitha Samarasekara

Add Filter options to Home Page

parent e46eca11
......@@ -48,6 +48,7 @@ router.route('/getFilteredList').post((req, res) => {
"tutor_main_district": tutor.tutor_main_district,
"tutor_main_city": tutor.tutor_main_city,
"tutor_medium": tutor.tutor_medium,
"tutor_registered_date": tutor.createdAt,
"tutor_qualification": tutor.tutor_qualification,
"review": reviews.map(review => review.review),
"ratings": reviews.map(review => review.rating)
......@@ -98,6 +99,7 @@ router.route('/getFilteredList').post((req, res) => {
"tutor_main_city": teacherReview.tutor_main_city,
"tutor_medium": teacherReview.tutor_medium,
"tutor_qualification": teacherReview.tutor_qualification,
"tutor_registered_date": teacherReview.tutor_registered_date,
"tutor_reviewValue": response.data.result,
"tutor_avg_rating" : Number(TotalRating/teacherReview.ratings.length),
"tutor_review_count" : teacherReview.review.length
......@@ -129,6 +131,7 @@ router.route('/getFilteredList').post((req, res) => {
"tutor_class_type": teacherReview.tutor_class_type,
"tutor_main_district": teacherReview.tutor_main_district,
"tutor_main_city": teacherReview.tutor_main_city,
"tutor_registered_date": teacherReview.tutor_registered_date,
"tutor_medium": teacherReview.tutor_medium,
"tutor_qualification": teacherReview.tutor_qualification,
"tutor_reviewValue": 0,
......
......@@ -43,7 +43,8 @@ export default class Home extends Component{
selectedClassType : '',
selectedLanguage : '',
TutorFilteredList : [],
TutorFilteredListFinal : [],
TutorFilteredRecommendedListFinal : [],
TutorOnlyFilteredListFinal : [],
RVPastResults : 25,
RVRatings : 25,
RVReviews : 25,
......@@ -345,7 +346,11 @@ export default class Home extends Component{
getRecommendation(){
const TutorFinalList = []
const TutorRecommendedFinalList = []
const TutorOnlyFilterFinalList = []
const todayDate = new Date();
// const FilteredDate = new Date().getDate() -
this.state.TutorFilteredList.map(tutor=>{
......@@ -391,12 +396,27 @@ export default class Home extends Component{
tutor_finalScore : FinalScore,
tutor_review_count : tutor.tutor_review_count
}
let oneday = 24 * 60 * 60 * 1000;
let NoOFDays = (todayDate - new Date(tutor.tutor_registered_date));
let NoOFDaysRegistered = Math.ceil(NoOFDays / oneday);
console.log("No Of Days2 : " + Math.ceil(NoOFDaysRegistered / oneday) );
// if((todayDate - tutor.tutor_registered_date.getDate()) > ){
//
// }
if(NoOFDaysRegistered >= 365 && Number(tutor.tutor_review_count) > 10){
TutorRecommendedFinalList.push(temp);
}
else {
TutorOnlyFilterFinalList.push(temp);
}
TutorFinalList.push(temp);
})
TutorFinalList.sort((a,b) => b.tutor_finalScore - a.tutor_finalScore);
TutorRecommendedFinalList.sort((a,b) => b.tutor_finalScore - a.tutor_finalScore);
TutorOnlyFilterFinalList.sort((a,b) => b.tutor_finalScore - a.tutor_finalScore);
this.setState({
TutorFilteredListFinal : TutorFinalList
TutorFilteredRecommendedListFinal : TutorRecommendedFinalList,
TutorOnlyFilteredListFinal : TutorOnlyFilterFinalList
},()=>{
if(this.state.TotalRecommendationCount === 0){
swal("Ops!!!", "You are not added any Filters...\nPlease add filters to get correct recommendation", "warning");
......@@ -725,7 +745,15 @@ export default class Home extends Component{
<h5 style={{margin:'10px'}}>{this.state.TutorFilteredList.length} Results</h5>
</div>
<div className="">
{this.state.TutorFilteredListFinal.length > 0 ? this.state.TutorFilteredListFinal.map( (card)=>{ return(<TutorCard data={card}/>)} ) : <div></div>}
{this.state.TutorFilteredRecommendedListFinal.length > 0 ? this.state.TutorFilteredRecommendedListFinal.map( (card)=>{ return(<TutorCard data={card}/>)} ) : <div></div>}
</div>
<div className="row" style={{margin:'20px'}}>
<h4>Filtered List</h4>
</div>
<div className="">
{this.state.TutorOnlyFilteredListFinal.length > 0 ? this.state.TutorOnlyFilteredListFinal.map( (card)=>{ return(<TutorCard data={card}/>)} ) : <div></div>}
</div>
<div className="app-main__outer">
......
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