//比较器排序
Comparator<VideosVo> commentComparator = new Comparator<VideosVo>() {
@Override
public int compare(VideosVo o1, VideosVo o2) {
if (StringUtils.equals(sortOrder, "ascending")) {
return o1.getCommentCount() - o2.getCommentCount();
} else {
return o2.getCommentCount() - o1.getCommentCount();
}
}
};
Comparator<VideosVo> LikeComparator = new Comparator<VideosVo>() {
@Override
public int compare(VideosVo o1, VideosVo o2) {
if (StringUtils.equals(sortOrder, "ascending")) {
return o1.getLikeCount() - o2.getLikeCount();
} else {
return o2.getLikeCount() - o1.getLikeCount();
}
}
};
Comparator<VideosVo> createDateComparator = new Comparator<VideosVo>() {
@Override
public int compare(VideosVo o1, VideosVo o2) {
if (StringUtils.equals(sortOrder, "ascending")) {
return o1.getCreateDate().intValue() - o2.getCreateDate().intValue();
} else {
return o2.getCreateDate().intValue() - o1.getCreateDate().intValue();
}
}
};
if (StringUtils.equals(sortProp, "likeCount")) {
Collections.sort(videosList, LikeComparator);
} else if (StringUtils.equals(sortProp, "commentCount")) {
Collections.sort(videosList, commentComparator);
} else if (StringUtils.equals(sortProp, "createDate")) {
Collections.sort(videosList, createDateComparator);
}
pageResult.setItems(videosList);
return pageResult;