diff --git a/servers/boe-server-all/src/main/java/com/xboe/module/course/service/impl/CoursePageServiceImpl.java b/servers/boe-server-all/src/main/java/com/xboe/module/course/service/impl/CoursePageServiceImpl.java index 99d5b14c..5940305e 100644 --- a/servers/boe-server-all/src/main/java/com/xboe/module/course/service/impl/CoursePageServiceImpl.java +++ b/servers/boe-server-all/src/main/java/com/xboe/module/course/service/impl/CoursePageServiceImpl.java @@ -212,9 +212,17 @@ public class CoursePageServiceImpl implements ICoursePageService { // 1. 按sortWeight升序排序 topList.sort(Comparator.comparingInt(CoursePageVo::getSortWeight)); // 2. 更新 - for (CoursePageVo vo : topList) { - courseDao.updateMultiFieldById(vo.getId(), - UpdateBuilder.create("sortWeight", vo.getSortWeight())); + for (int i = 0, len = topList.size(); i < len; i++) { + CoursePageVo vo = topList.get(i); + String id = vo.getId(); + courseDao.updateMultiFieldById(id, + UpdateBuilder.create("sortWeight", i)); + if (this.fullTextSearch != null) { + Object fullId = courseDao.findField("fullTextId", FieldFilters.eq("id", id)); + if (fullId != null) { + publishUtil.updateFieldByDocId((String) fullId, "sortWeight", i); + } + } } return ServiceResponse.success(topList); }