修复若干问题
在AddUserAddress.vue中将“修改地址”改为“添加地址” 搜索服务过滤不重要关键字(如“子”,“的”)
This commit is contained in:
parent
8d7a669224
commit
1da74a4b93
|
|
@ -4,7 +4,7 @@
|
|||
|
||||
<header>
|
||||
<i class="fa fa-angle-left" @click="back"></i>
|
||||
<p>修改地址</p>
|
||||
<p>添加地址</p>
|
||||
</header>
|
||||
|
||||
<div class="shangbiao">
|
||||
|
|
|
|||
|
|
@ -12,6 +12,8 @@ import org.springframework.beans.factory.annotation.Autowired;
|
|||
import org.springframework.stereotype.Service;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.Arrays;
|
||||
import java.util.HashSet;
|
||||
import java.util.List;
|
||||
|
||||
@Service
|
||||
|
|
@ -21,27 +23,35 @@ public class SearchServiceImpl implements SearchService {
|
|||
@Autowired
|
||||
private BusinessMapper businessMapper;
|
||||
|
||||
@Override
|
||||
public List<Food> listFoodByKeyword(String query) {
|
||||
static private final HashSet<Character> skipwords=new HashSet<>(Arrays.asList('的','子'));
|
||||
|
||||
static private List<String> getKeywords(String query){
|
||||
Result res = ToAnalysis.parse(query);
|
||||
List<String> keywords=new ArrayList<>();
|
||||
for(Term term:res){
|
||||
if(!term.getName().matches("^\\s+$")){
|
||||
keywords.add(term.getName());
|
||||
StringBuilder sb=new StringBuilder();
|
||||
for(int i=0;i<term.getName().length();i++){
|
||||
Character ch=term.getName().charAt(i);
|
||||
if(!skipwords.contains(ch)) {
|
||||
sb.append(ch);
|
||||
}
|
||||
}
|
||||
String newStr=sb.toString();
|
||||
if(!(newStr.isEmpty()||newStr.matches("^\\s+$"))){
|
||||
keywords.add(newStr);
|
||||
}
|
||||
}
|
||||
return foodMapper.listFoodByKeyWord(keywords);
|
||||
return keywords;
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<Food> listFoodByKeyword(String query) {
|
||||
List<String> keywords=getKeywords(query);
|
||||
return foodMapper.listFoodByKeyWord(getKeywords(query));
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<Business> listBusinessByKeyword(String query) {
|
||||
Result res = ToAnalysis.parse(query);
|
||||
List<String> keywords=new ArrayList<>();
|
||||
for(Term term:res){
|
||||
if(!term.getName().matches("^\\s+$")){
|
||||
keywords.add(term.getName());
|
||||
}
|
||||
}
|
||||
return businessMapper.listBusinessByKeyword(keywords);
|
||||
return businessMapper.listBusinessByKeyword(getKeywords(query));
|
||||
}
|
||||
}
|
||||
Loading…
Reference in New Issue