Commit 6881208c by 桂前礼

feat: [none] 群筛选新增根据群人数排序选项

parent 472e4ef8
......@@ -27,5 +27,5 @@ public interface ESBookGroupQrcodeBiz {
*/
void save(List<ESBookGroupQrcodeDTO> dtos);
PageBeanNew<GroupQrcodeSearchDTO> search(String text, String methodType, Integer pageSize, Integer pageNum);
PageBeanNew<GroupQrcodeSearchDTO> search(String text, String methodType, Boolean isOrder, Integer pageSize, Integer pageNum);
}
......@@ -267,14 +267,19 @@ public class ESBookGroupQrcodeBizImpl implements ESBookGroupQrcodeBiz {
}
@Override
public PageBeanNew<GroupQrcodeSearchDTO> search(String text, String methodType, Integer pageSize, Integer pageNum) {
public PageBeanNew<GroupQrcodeSearchDTO> search(String text, String methodType, Boolean isOrder, Integer pageSize, Integer pageNum) {
QueryBuilder queryBuilder;
PageRequest pageRequest;
if (Objects.nonNull(isOrder)&&isOrder){
pageRequest = new PageRequest(pageNum,pageSize,new Sort(Sort.Direction.DESC,"groupMemberCount","userNumber"));
}else {
pageRequest = new PageRequest(pageNum, pageSize);
}
if (StrUtil.isEmpty(text)) {
queryBuilder = QueryBuilders.boolQuery();
pageRequest = new PageRequest(pageNum, pageSize, new Sort(Sort.Direction.DESC, "groupMemberCount", "userNumber"));
} else {
pageRequest = new PageRequest(pageNum, pageSize);
if ("AND".equals(methodType)) {
queryBuilder = QueryBuilders.multiMatchQuery(text, "groupName", "groupNameTags", "qrcodeBookName", "bookNameTags", "cityTags", "pressTags", "pressTags", "adviserName").type(MultiMatchQueryBuilder.Type.CROSS_FIELDS).operator(MatchQueryBuilder.Operator.AND);
} else {
......
......@@ -32,12 +32,13 @@ public class ESBookGroupQrcodeFacadeImpl {
@RequestMapping(value = "/search", method = RequestMethod.GET)
public ResponseDto<PageBeanNew<GroupQrcodeSearchDTO>> search(@RequestParam(value = "keyword", required = false) String keyword,
@RequestParam(value = "methodType",required = false) String methodType,
@RequestParam(value = "isOrder",required = false) Boolean isOrder,
@RequestParam("numPerPage") Integer numPerPage,
@RequestParam("currentPage") Integer currentPage) {
if (StrUtil.isBlank(methodType)){
methodType = "OR";
}
return new ResponseDto<>(esBookGroupQrcodeBiz.search(keyword, methodType, numPerPage, currentPage));
return new ResponseDto<>(esBookGroupQrcodeBiz.search(keyword, methodType, isOrder,numPerPage, currentPage));
}
}
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