applySorting function
Implementation
List<Proposal> applySorting(List<Proposal> proposalList, String sort) {
List<Proposal> sortedList = List.from(proposalList);
switch (sort) {
case 'VOTES':
sortedList.sort((a, b) => b.totalVotes.compareTo(a.totalVotes));
break;
case 'DAILY PAY':
sortedList.sort((a, b) {
double aDailyPay = double.parse(a.dailyPay.amount) / 1000;
double bDailyPay = double.parse(b.dailyPay.amount) / 1000;
return bDailyPay.compareTo(aDailyPay);
});
break;
case 'END DATE':
sortedList.sort((a, b) {
DateTime aEndDate = DateTime.parse(a.endDate);
DateTime bEndDate = DateTime.parse(b.endDate);
return aEndDate.compareTo(bEndDate);
});
break;
}
return sortedList;
}