Commit 79604cc7 by 赵剑炜

优化代码

parent e0a5970c
......@@ -343,7 +343,7 @@ public class EquipmentTypeServiceImpl extends ServiceImpl<EquipmentTypeMapper, E
List<EquipmentType> searchResults = es.searchEntities("type_pinyin",req.getNickName(),"name",0, 50,req.getType(), req.getTypeName(), req.getSearchType(), EquipmentType.class);
LambdaQueryWrapper<EquipmentType> wp = this.createWrapper(req);
// 获取所有组织机构数据
List<EquipmentType> allTypes= es.searchAll("type_pinyin",0, 3000,null, EquipmentType.class);
List<EquipmentType> allTypes= es.searchAll("type_pinyin",0, 3000, EquipmentType.class);
// List<EquipmentType> allTypes = this.list(wp);
List<EquipmentTypeDto> treeResult= buildTypeTree(searchResults,allTypes);
ESTypeDto resultDto=new ESTypeDto();
......
......@@ -13,10 +13,9 @@ import org.elasticsearch.search.SearchHit;
import org.elasticsearch.search.builder.SearchSourceBuilder;
import java.io.IOException;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import java.util.*;
import java.util.concurrent.TimeUnit;
import java.util.stream.Collectors;
public class ElasticsearchUtil<T> {
private final RestHighLevelClient client;
......@@ -27,13 +26,13 @@ public class ElasticsearchUtil<T> {
this.client = client;
}
public List<T> searchAll(String typeName, Integer pageNum, Integer pageSize,Integer type, Class<T> entityClass) throws IOException {
public List<T> searchAll(String typeName, int pageNum, int pageSize, Class<T> entityClass) throws IOException {
if (pageNum < 0) pageNum = 0;
SearchRequest request = new SearchRequest(typeName);
SearchSourceBuilder builder = new SearchSourceBuilder();
builder.from(pageNum);
builder.from(pageNum * pageSize);
builder.size(pageSize);
BoolQueryBuilder boolQueryBuilder = QueryBuilders.boolQuery();
boolQueryBuilder.mustNot(QueryBuilders.matchQuery("name", "超级根"));
......@@ -44,15 +43,19 @@ public class ElasticsearchUtil<T> {
request.source(builder);
SearchResponse searchResponse = client.search(request, RequestOptions.DEFAULT);
List<T> entityList = new ArrayList<>();
for (SearchHit documentFields : searchResponse.getHits().getHits()) {
Map<String, Object> sourceAsMap = documentFields.getSourceAsMap();
T entity = fromMap(sourceAsMap, entityClass);
entityList.add(entity);
ObjectMapper objectMapper = new ObjectMapper();
return Arrays.stream(searchResponse.getHits().getHits())
.map(SearchHit::getSourceAsString)
.map(sourceAsString -> {
try {
return objectMapper.readValue(sourceAsString, entityClass);
} catch (IOException e) {
// 处理异常
return null;
}
return entityList;
})
.filter(Objects::nonNull)
.collect(Collectors.toList());
}
public List<T> searchEntities(String typeName,String nickName, String index, Integer pageNum, Integer pageSize,Integer type, String keyword,String searchType, Class<T> entityClass) throws IOException {
......
......@@ -36,9 +36,9 @@ knife4j:
spring:
datasource:
driver-class-name: com.mysql.cj.jdbc.Driver
url: jdbc:mysql://192.168.3.128:3306/db_jyzb?autoReconnect=true&useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=CONVERT_TO_NULL&useSSL=false&serverTimezone=CTT&nullCatalogMeansCurrent=true
username: junmp
password: 123456
url: jdbc:mysql://192.168.3.121:3306/db_jyzb?autoReconnect=true&useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=CONVERT_TO_NULL&useSSL=false&serverTimezone=CTT&nullCatalogMeansCurrent=true
username: root
password: junmp123
redis:
#host: 192.168.3.188
......
......@@ -32,9 +32,9 @@ knife4j:
spring:
datasource:
driver-class-name: com.mysql.cj.jdbc.Driver
url: jdbc:mysql://192.168.3.128:3306/db_jyzb?autoReconnect=true&useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=CONVERT_TO_NULL&useSSL=false&serverTimezone=CTT&nullCatalogMeansCurrent=true
username: junmp
password: 123456
url: jdbc:mysql://192.168.3.121:3306/db_jyzb?autoReconnect=true&useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=CONVERT_TO_NULL&useSSL=false&serverTimezone=CTT&nullCatalogMeansCurrent=true
username: root
password: junmp123
redis:
#host: 192.168.3.188
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论