|
@@ -11,6 +11,7 @@ import java.util.ArrayList;
|
|
import java.util.HashMap;
|
|
import java.util.HashMap;
|
|
import java.util.List;
|
|
import java.util.List;
|
|
import java.util.Map;
|
|
import java.util.Map;
|
|
|
|
+import java.util.stream.Collectors;
|
|
|
|
|
|
@Service
|
|
@Service
|
|
public class ProjectItemTargetRoomService {
|
|
public class ProjectItemTargetRoomService {
|
|
@@ -144,23 +145,70 @@ public class ProjectItemTargetRoomService {
|
|
return list;
|
|
return list;
|
|
}
|
|
}
|
|
|
|
|
|
- public List<ProjectItemTargetRoom> getProjectItemTargetRoom(ProjectItemTargetRoom projectItemTargetRoom) {
|
|
|
|
|
|
+ public Map<String, Object> queryKeyWord(String keyWord) {
|
|
|
|
+ Map<String, Object> map = new HashMap<>();
|
|
|
|
|
|
- String projectName = projectItemTargetRoom.getProjectName();
|
|
|
|
- if (StringUtil.notBlank(projectName)) {
|
|
|
|
- List<Long> projectIds = projectDao.fuzzyName(projectName);
|
|
|
|
- if (projectIds.size() > 0) {
|
|
|
|
- projectItemTargetRoom.setProjectIds(projectIds);
|
|
|
|
- }
|
|
|
|
|
|
+ // 根据关键字查询标签名称
|
|
|
|
+ String ids = "-1";
|
|
|
|
+ List<Long> tagIds = tagDao.fuzzyName(keyWord);
|
|
|
|
+ if (tagIds.size() > 0) {
|
|
|
|
+ ids = tagIds.stream().map(String::valueOf).collect(Collectors.joining(","));
|
|
}
|
|
}
|
|
|
|
|
|
- List<ProjectItemTargetRoom> list = projectItemTargetRoomDao.getProjectItemTargetRoom(projectItemTargetRoom);
|
|
|
|
- for (ProjectItemTargetRoom room : list) {
|
|
|
|
|
|
+ List<Project> projectList = new ArrayList<>();
|
|
|
|
+ // 根据关键字查询项目
|
|
|
|
+ Project project = new Project();
|
|
|
|
+ project.setName(keyWord);
|
|
|
|
+ List<Project> ll = projectDao.fuzzyName(project);
|
|
|
|
+ if (ll.size() > 0) {
|
|
|
|
+ projectList.addAll(ll);
|
|
|
|
+ }
|
|
|
|
+ project.setName(null);
|
|
|
|
+ project.setTagIds(ids);
|
|
|
|
+ List<Project> ls = projectDao.fuzzyName(project);
|
|
|
|
+ if (ls.size() > 0) {
|
|
|
|
+ projectList.addAll(ls);
|
|
|
|
+ }
|
|
|
|
+ for (Project p : projectList) {
|
|
|
|
+ List<Tag> tags = new ArrayList<>();
|
|
|
|
+ if (StringUtil.notBlank(p.getTagIds())) {
|
|
|
|
+ for (String tagId : p.getTagIds().split(",")) {
|
|
|
|
+ tags.add(this.getTag(Long.parseLong(tagId)));
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ p.setTagList(tags);
|
|
|
|
+ }
|
|
|
|
+ map.put("projectList", projectList);
|
|
|
|
+
|
|
|
|
+ List<ProjectItemTargetRoom> projectItemTargetRoomList = new ArrayList<>();
|
|
|
|
+ //根据关键字查询房源
|
|
|
|
+ ProjectItemTargetRoom projectItemTargetRoom = new ProjectItemTargetRoom();
|
|
|
|
+ projectItemTargetRoom.setName(keyWord);
|
|
|
|
+ List<ProjectItemTargetRoom> lll = projectItemTargetRoomDao.getProjectItemTargetRoom(projectItemTargetRoom);
|
|
|
|
+ if (lll.size() > 0) {
|
|
|
|
+ projectItemTargetRoomList.addAll(lll);
|
|
|
|
+ }
|
|
|
|
+ projectItemTargetRoom.setName(null);
|
|
|
|
+ projectItemTargetRoom.setTagIds(ids);
|
|
|
|
+ List<ProjectItemTargetRoom> lss = projectItemTargetRoomDao.getProjectItemTargetRoom(projectItemTargetRoom);
|
|
|
|
+ if (lss.size() > 0) {
|
|
|
|
+ projectItemTargetRoomList.addAll(lss);
|
|
|
|
+ }
|
|
|
|
+ for (ProjectItemTargetRoom room : projectItemTargetRoomList) {
|
|
room.setProjectName(this.getProject(room.getProjectId()).getName());
|
|
room.setProjectName(this.getProject(room.getProjectId()).getName());
|
|
room.setProjectItemName(this.getProjectItem(room.getProjectItemId()).getName());
|
|
room.setProjectItemName(this.getProjectItem(room.getProjectItemId()).getName());
|
|
room.setProjectItemTargetName(this.getProjectItemTarget(room.getProjectItemTargetId()).getName());
|
|
room.setProjectItemTargetName(this.getProjectItemTarget(room.getProjectItemTargetId()).getName());
|
|
|
|
+ List<Tag> tags = new ArrayList<>();
|
|
|
|
+ if (StringUtil.notBlank(room.getTagIds())) {
|
|
|
|
+ for (String tagId : room.getTagIds().split(",")) {
|
|
|
|
+ tags.add(this.getTag(Long.parseLong(tagId)));
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ room.setTagList(tags);
|
|
}
|
|
}
|
|
- return list;
|
|
|
|
|
|
+ map.put("houseList", projectItemTargetRoomList);
|
|
|
|
+
|
|
|
|
+ return map;
|
|
}
|
|
}
|
|
|
|
|
|
public int insert(ProjectItemTargetRoom projectItemTargetRoom) {
|
|
public int insert(ProjectItemTargetRoom projectItemTargetRoom) {
|