|
|
@@ -5,6 +5,7 @@ import com.onemap.apply.domain.yzt.*;
|
|
|
import com.onemap.apply.mapper.yzt.CollectionMapper;
|
|
|
import com.onemap.apply.mapper.yzt.SearchMapper;
|
|
|
import com.onemap.apply.service.yzt.ISearchService;
|
|
|
+import com.onemap.common.core.utils.StringUtils;
|
|
|
import com.onemap.common.core.web.domain.RequestResult;
|
|
|
import com.onemap.common.datasource.annotation.Slave;
|
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
|
@@ -76,13 +77,20 @@ public class SearchServiceImpl implements ISearchService {
|
|
|
return RequestResult.error("删除失败!", 0);
|
|
|
}
|
|
|
|
|
|
-
|
|
|
@Override
|
|
|
@Slave
|
|
|
public List<PoiDTO> poiSearch(PoiSearchDTO poiSearchDTO) {
|
|
|
- if (poiSearchDTO.getOffset() == null || poiSearchDTO.getOffset() <0 ) {
|
|
|
+ if (poiSearchDTO.getOffset() == null || poiSearchDTO.getOffset() < 0 ) {
|
|
|
poiSearchDTO.setOffset(0);
|
|
|
}
|
|
|
+ //如果输入文字过长,相似度词汇取第一个分词
|
|
|
+ if(StringUtils.isNotBlank(poiSearchDTO.getName()) && poiSearchDTO.getName().length() >10 && !poiSearchDTO.getChildrenWord().isEmpty()){
|
|
|
+ poiSearchDTO.setName(poiSearchDTO.getChildrenWord().get(0));
|
|
|
+ }
|
|
|
+ //如果标题过短,则把标题也加入相似度词汇
|
|
|
+ if(StringUtils.isNotBlank(poiSearchDTO.getName()) && poiSearchDTO.getName().length() <=3){
|
|
|
+ poiSearchDTO.getChildrenWord().add(poiSearchDTO.getName());
|
|
|
+ }
|
|
|
List<PoiDTO> res = searchMapper.poiLikeName(poiSearchDTO.getName(), poiSearchDTO.getChildrenWord(), poiSearchDTO.getLimit(), poiSearchDTO.getOffset());
|
|
|
return res;
|
|
|
}
|
|
|
@@ -97,5 +105,4 @@ public class SearchServiceImpl implements ISearchService {
|
|
|
|
|
|
|
|
|
|
|
|
-
|
|
|
}
|