Skip to content
项目
群组
代码片段
帮助
当前项目
正在载入...
登录 / 注册
切换导航面板
A
aroad_aqsc
项目
项目
详情
活动
周期分析
仓库
仓库
文件
提交
分支
标签
贡献者
图表
比较
统计图
议题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
日程
统计图
Wiki
Wiki
代码片段
代码片段
成员
成员
折叠边栏
关闭边栏
活动
图像
聊天
创建新问题
作业
提交
问题看板
Open sidebar
许言琪
aroad_aqsc
Commits
82edd278
提交
82edd278
authored
7月 05, 2019
作者:
董吉利
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
elasticsearch中桥梁,路段,收费站,服务区,隧道排除结果为空,排除过滤空指针
上级
9c6e0a74
显示空白字符变更
内嵌
并排
正在显示
2 个修改的文件
包含
68 行增加
和
39 行删除
+68
-39
EsUtil_fanshe.java
...lephant/framework/galaxy/aroad/bigdata/EsUtil_fanshe.java
+60
-39
SzglController.java
...k/galaxy/aroad/module/szgl/controller/SzglController.java
+8
-0
没有找到文件。
src/main/java/com/elephant/framework/galaxy/aroad/bigdata/EsUtil_fanshe.java
浏览文件 @
82edd278
...
@@ -792,7 +792,7 @@ public class EsUtil_fanshe {
...
@@ -792,7 +792,7 @@ public class EsUtil_fanshe {
}
}
}
}
/**
/**
* @Description:
桥梁查询最新年份的所有数据
* @Description:
* @Param:
* @Param:
* @return:
* @return:
* @Author: dongjili
* @Author: dongjili
...
@@ -855,8 +855,6 @@ public class EsUtil_fanshe {
...
@@ -855,8 +855,6 @@ public class EsUtil_fanshe {
SearchHits
hits
=
response
.
getHits
();
SearchHits
hits
=
response
.
getHits
();
getBaseBridgeDataList
(
bridgeNames
,
hits
,
basebridgealldataList
);
getBaseBridgeDataList
(
bridgeNames
,
hits
,
basebridgealldataList
);
totalHits
=
hits
.
getTotalHits
();
totalHits
=
hits
.
getTotalHits
();
}
else
{
return
null
;
}
}
long
finalTotalHits
=
totalHits
;
long
finalTotalHits
=
totalHits
;
...
@@ -875,26 +873,30 @@ public class EsUtil_fanshe {
...
@@ -875,26 +873,30 @@ public class EsUtil_fanshe {
*/
*/
public
static
List
<
Basebridgealldata
>
queryBridgeQLDM
(
String
keyword
,
String
index
,
int
start
,
int
row
)
throws
Exception
{
public
static
List
<
Basebridgealldata
>
queryBridgeQLDM
(
String
keyword
,
String
index
,
int
start
,
int
row
)
throws
Exception
{
SearchRequestBuilder
searchRequestBuilder
=
getClient
().
prepareSearch
(
index
).
setTypes
(
"aroad"
).
setFrom
(
start
).
setSize
(
row
);
SearchRequestBuilder
searchRequestBuilder
=
getClient
().
prepareSearch
(
index
).
setTypes
(
"aroad"
).
setFrom
(
start
).
setSize
(
row
);
String
maxYear
=
""
;
if
(
org
.
apache
.
commons
.
lang
.
StringUtils
.
isNotBlank
(
keyword
))
{
MatchPhraseQueryBuilder
qiaoliangdaima
=
QueryBuilders
.
matchPhraseQuery
(
"qiaoliangdaima"
,
keyword
);
MatchPhraseQueryBuilder
qiaoliangdaima
=
QueryBuilders
.
matchPhraseQuery
(
"qiaoliangdaima"
,
keyword
);
searchRequestBuilder
.
setQuery
(
qiaoliangdaima
).
addSort
(
"year"
,
SortOrder
.
DESC
);
searchRequestBuilder
.
setQuery
(
qiaoliangdaima
).
addSort
(
"year"
,
SortOrder
.
DESC
);
String
maxYear
=
getMaxYear
(
searchRequestBuilder
);
maxYear
=
getMaxYear
(
searchRequestBuilder
);
}
// 搜索数据
// 搜索数据
//isNotBlank(str) 等价于 str != null && str.length > 0 && str.trim().length> 0(去掉字符串两端的多余的空格的长度)
//isNotBlank(str) 等价于 str != null && str.length > 0 && str.trim().length> 0(去掉字符串两端的多余的空格的长度)
if
(
org
.
apache
.
commons
.
lang
.
StringUtils
.
isNotBlank
(
keyword
))
{
List
<
Basebridgealldata
>
basebridgealldataList
=
new
ArrayList
<>();
if
(
org
.
apache
.
commons
.
lang
.
StringUtils
.
isNotBlank
(
keyword
)
&&
maxYear
!=
null
&&
!
""
.
equals
(
maxYear
))
{
//multiMatchQuery多个字段匹配某一个值
//multiMatchQuery多个字段匹配某一个值
//multiMatchQuery(text,fields)其中的fields是字段的名字,可以写好几个,每一个中间用逗号分隔
//multiMatchQuery(text,fields)其中的fields是字段的名字,可以写好几个,每一个中间用逗号分隔
BoolQueryBuilder
boolQueryBuilder
=
QueryBuilders
.
boolQuery
()
BoolQueryBuilder
boolQueryBuilder
=
QueryBuilders
.
boolQuery
()
.
must
(
qiaoliangdaima
)
.
must
(
QueryBuilders
.
matchPhraseQuery
(
"qiaoliangdaima"
,
keyword
)
)
.
must
(
QueryBuilders
.
matchPhraseQuery
(
"year"
,
maxYear
));
.
must
(
QueryBuilders
.
matchPhraseQuery
(
"year"
,
maxYear
));
searchRequestBuilder
.
setQuery
(
boolQueryBuilder
);
searchRequestBuilder
.
setQuery
(
boolQueryBuilder
);
}
String
[]
bridgeNames
=
getbridgeNames
();
String
[]
bridgeNames
=
getbridgeNames
();
SearchResponse
response
=
searchRequestBuilder
.
get
();
SearchResponse
response
=
searchRequestBuilder
.
get
();
//获取命中次数,查询结果有多少对象
//获取命中次数,查询结果有多少对象
SearchHits
hits
=
response
.
getHits
();
SearchHits
hits
=
response
.
getHits
();
List
<
Basebridgealldata
>
basebridgealldataList
=
new
ArrayList
<>();
getBaseBridgeDataList
(
bridgeNames
,
hits
,
basebridgealldataList
);
getBaseBridgeDataList
(
bridgeNames
,
hits
,
basebridgealldataList
);
}
return
basebridgealldataList
;
return
basebridgealldataList
;
}
}
...
@@ -942,38 +944,43 @@ public class EsUtil_fanshe {
...
@@ -942,38 +944,43 @@ public class EsUtil_fanshe {
public
static
Map
<
String
,
Object
>
queryHighWay
(
String
keyword
,
String
index
,
int
start
,
int
row
)
throws
Exception
{
public
static
Map
<
String
,
Object
>
queryHighWay
(
String
keyword
,
String
index
,
int
start
,
int
row
)
throws
Exception
{
SearchRequestBuilder
searchRequestBuilderStart
=
getClient
().
prepareSearch
(
index
).
setTypes
(
"aroad"
).
setFrom
(
start
).
setSize
(
row
);
SearchRequestBuilder
searchRequestBuilderStart
=
getClient
().
prepareSearch
(
index
).
setTypes
(
"aroad"
).
setFrom
(
start
).
setSize
(
row
);
String
maxYear
=
""
;
if
(
org
.
apache
.
commons
.
lang
.
StringUtils
.
isNotBlank
(
keyword
))
{
if
(
org
.
apache
.
commons
.
lang
.
StringUtils
.
isNotBlank
(
keyword
))
{
BoolQueryBuilder
boolQueryBuilderStart
=
QueryBuilders
.
boolQuery
()
BoolQueryBuilder
boolQueryBuilderStart
=
QueryBuilders
.
boolQuery
()
.
must
(
QueryBuilders
.
multiMatchQuery
(
keyword
,
"luxianbianhao"
,
"luxianmingcheng"
))
.
must
(
QueryBuilders
.
multiMatchQuery
(
keyword
,
"luxianbianhao"
,
"luxianmingcheng"
))
.
mustNot
(
QueryBuilders
.
matchPhraseQuery
(
"dengjimingcheng"
,
"高速"
))
.
mustNot
(
QueryBuilders
.
matchPhraseQuery
(
"dengjimingcheng"
,
"高速"
))
.
mustNot
(
QueryBuilders
.
matchPhraseQuery
(
"dengjimingcheng"
,
"等外"
));
.
mustNot
(
QueryBuilders
.
matchPhraseQuery
(
"dengjimingcheng"
,
"等外"
));
searchRequestBuilderStart
.
setQuery
(
boolQueryBuilderStart
).
addSort
(
"year"
,
SortOrder
.
DESC
);
searchRequestBuilderStart
.
setQuery
(
boolQueryBuilderStart
).
addSort
(
"year"
,
SortOrder
.
DESC
);
maxYear
=
getMaxYear
(
searchRequestBuilderStart
);
}
}
String
maxYear
=
getMaxYear
(
searchRequestBuilderStart
);
SearchRequestBuilder
searchRequestBuilder
=
getClient
().
prepareSearch
(
index
).
setTypes
(
"aroad"
).
setFrom
(
start
).
setSize
(
row
);
SearchRequestBuilder
searchRequestBuilder
=
getClient
().
prepareSearch
(
index
).
setTypes
(
"aroad"
).
setFrom
(
start
).
setSize
(
row
);
//搜索数据
//搜索数据
//isNotBlank(str) 等价于 str != null && str.length > 0 && str.trim().length> 0(去掉字符串两端的多余的空格的长度)
//isNotBlank(str) 等价于 str != null && str.length > 0 && str.trim().length> 0(去掉字符串两端的多余的空格的长度)
if
(
org
.
apache
.
commons
.
lang
.
StringUtils
.
isNotBlank
(
keyword
))
{
List
<
Basehighwayalldata
>
basehighwayalldataList
=
new
ArrayList
<>();
List
<
Basehighwayalldata
>
basehighwayalldataListGroup
=
null
;
long
totalHits
=
0
;
if
(
org
.
apache
.
commons
.
lang
.
StringUtils
.
isNotBlank
(
keyword
)
&&
maxYear
!=
null
&&
!
""
.
equals
(
maxYear
))
{
BoolQueryBuilder
boolQueryBuilder
=
QueryBuilders
.
boolQuery
()
BoolQueryBuilder
boolQueryBuilder
=
QueryBuilders
.
boolQuery
()
.
must
(
QueryBuilders
.
multiMatchQuery
(
keyword
,
"luxianbianhao"
,
"luxianmingcheng"
))
.
must
(
QueryBuilders
.
multiMatchQuery
(
keyword
,
"luxianbianhao"
,
"luxianmingcheng"
))
.
must
(
QueryBuilders
.
matchPhraseQuery
(
"year"
,
maxYear
))
.
must
(
QueryBuilders
.
matchPhraseQuery
(
"year"
,
maxYear
))
.
mustNot
(
QueryBuilders
.
matchPhraseQuery
(
"dengjimingcheng"
,
"高速"
))
.
mustNot
(
QueryBuilders
.
matchPhraseQuery
(
"dengjimingcheng"
,
"高速"
))
.
mustNot
(
QueryBuilders
.
matchPhraseQuery
(
"dengjimingcheng"
,
"等外"
));
.
mustNot
(
QueryBuilders
.
matchPhraseQuery
(
"dengjimingcheng"
,
"等外"
));
searchRequestBuilder
.
setQuery
(
boolQueryBuilder
);
searchRequestBuilder
.
setQuery
(
boolQueryBuilder
);
}
String
[]
highwayNames
=
getHighWayNames
();
String
[]
highwayNames
=
getHighWayNames
();
SearchResponse
response
=
searchRequestBuilder
.
get
();
SearchResponse
response
=
searchRequestBuilder
.
get
();
//获取命中次数,查询结果有多少对象
//获取命中次数,查询结果有多少对象
SearchHits
hits
=
response
.
getHits
();
SearchHits
hits
=
response
.
getHits
();
List
<
Basehighwayalldata
>
basehighwayalldataList
=
new
ArrayList
<>();
getBaseHighWayAllDataList
(
highwayNames
,
hits
,
basehighwayalldataList
);
getBaseHighWayAllDataList
(
highwayNames
,
hits
,
basehighwayalldataList
);
//分词查询结果的路段数据按照路线编号groupby,起点桩号aorderby
//分词查询结果的路段数据按照路线编号groupby,起点桩号aorderby
List
<
Basehighwayalldata
>
basehighwayalldataListGroup
=
GroupUtils
.
groupByProperty
(
basehighwayalldataList
);
basehighwayalldataListGroup
=
GroupUtils
.
groupByProperty
(
basehighwayalldataList
);
totalHits
=
hits
.
getTotalHits
();
}
long
finalTotalHits
=
totalHits
;
List
<
Basehighwayalldata
>
finalBasehighwayalldataListGroup
=
basehighwayalldataListGroup
;
return
new
HashMap
<
String
,
Object
>()
{{
return
new
HashMap
<
String
,
Object
>()
{{
put
(
"total"
,
hits
.
getTotalHits
()
);
put
(
"total"
,
finalTotalHits
);
put
(
"list"
,
b
asehighwayalldataListGroup
);
put
(
"list"
,
finalB
asehighwayalldataListGroup
);
}};
}};
}
}
...
@@ -987,17 +994,19 @@ public class EsUtil_fanshe {
...
@@ -987,17 +994,19 @@ public class EsUtil_fanshe {
public
static
List
<
Basehighwayalldata
>
queryHighWayFiler
(
String
lxbh
,
double
zh
,
String
index
)
throws
Exception
{
public
static
List
<
Basehighwayalldata
>
queryHighWayFiler
(
String
lxbh
,
double
zh
,
String
index
)
throws
Exception
{
SearchRequestBuilder
searchRequestBuilder
=
getClient
().
prepareSearch
(
index
).
setTypes
(
"aroad"
);
SearchRequestBuilder
searchRequestBuilder
=
getClient
().
prepareSearch
(
index
).
setTypes
(
"aroad"
);
String
maxYear
=
""
;
if
(
org
.
apache
.
commons
.
lang
.
StringUtils
.
isNotBlank
(
lxbh
)&&
org
.
apache
.
commons
.
lang
.
StringUtils
.
isNotBlank
(
String
.
valueOf
(
zh
)))
{
if
(
org
.
apache
.
commons
.
lang
.
StringUtils
.
isNotBlank
(
lxbh
)&&
org
.
apache
.
commons
.
lang
.
StringUtils
.
isNotBlank
(
String
.
valueOf
(
zh
)))
{
BoolQueryBuilder
boolqueryStart
=
QueryBuilders
.
boolQuery
()
BoolQueryBuilder
boolqueryStart
=
QueryBuilders
.
boolQuery
()
.
must
(
QueryBuilders
.
matchPhraseQuery
(
"luxianbianhao"
,
lxbh
))
.
must
(
QueryBuilders
.
matchPhraseQuery
(
"luxianbianhao"
,
lxbh
))
.
must
(
QueryBuilders
.
rangeQuery
(
"qidianzhuanghaoa"
).
lte
(
zh
))
.
must
(
QueryBuilders
.
rangeQuery
(
"qidianzhuanghaoa"
).
lte
(
zh
))
.
must
(
QueryBuilders
.
rangeQuery
(
"zhidianzhuanghao"
).
gte
(
zh
));
.
must
(
QueryBuilders
.
rangeQuery
(
"zhidianzhuanghao"
).
gte
(
zh
));
searchRequestBuilder
.
setQuery
(
boolqueryStart
).
addSort
(
"year"
,
SortOrder
.
DESC
);
searchRequestBuilder
.
setQuery
(
boolqueryStart
).
addSort
(
"year"
,
SortOrder
.
DESC
);
maxYear
=
getMaxYear
(
searchRequestBuilder
);
}
}
String
maxYear
=
getMaxYear
(
searchRequestBuilder
);
//搜索数据
//搜索数据
//isNotBlank(str) 等价于 str != null && str.length > 0 && str.trim().length> 0(去掉字符串两端的多余的空格的长度)
//isNotBlank(str) 等价于 str != null && str.length > 0 && str.trim().length> 0(去掉字符串两端的多余的空格的长度)
if
(
org
.
apache
.
commons
.
lang
.
StringUtils
.
isNotBlank
(
lxbh
)&&
org
.
apache
.
commons
.
lang
.
StringUtils
.
isNotBlank
(
String
.
valueOf
(
zh
)))
{
List
<
Basehighwayalldata
>
basehighwayalldataList
=
new
ArrayList
<>();
if
(
maxYear
!=
null
&&
!
""
.
equals
(
maxYear
)
&&
org
.
apache
.
commons
.
lang
.
StringUtils
.
isNotBlank
(
lxbh
)
&&
org
.
apache
.
commons
.
lang
.
StringUtils
.
isNotBlank
(
String
.
valueOf
(
zh
)))
{
//multiMatchQuery多个字段匹配某一个值
//multiMatchQuery多个字段匹配某一个值
//multiMatchQuery(text,fields)其中的fields是字段的名字,可以写好几个,每一个中间用逗号分隔
//multiMatchQuery(text,fields)其中的fields是字段的名字,可以写好几个,每一个中间用逗号分隔
BoolQueryBuilder
boolquery
=
QueryBuilders
.
boolQuery
()
BoolQueryBuilder
boolquery
=
QueryBuilders
.
boolQuery
()
...
@@ -1006,13 +1015,12 @@ public class EsUtil_fanshe {
...
@@ -1006,13 +1015,12 @@ public class EsUtil_fanshe {
.
must
(
QueryBuilders
.
rangeQuery
(
"zhidianzhuanghao"
).
gte
(
zh
))
.
must
(
QueryBuilders
.
rangeQuery
(
"zhidianzhuanghao"
).
gte
(
zh
))
.
must
(
QueryBuilders
.
matchPhraseQuery
(
"year"
,
maxYear
));
.
must
(
QueryBuilders
.
matchPhraseQuery
(
"year"
,
maxYear
));
searchRequestBuilder
.
setQuery
(
boolquery
);
searchRequestBuilder
.
setQuery
(
boolquery
);
}
String
[]
highwayNames
=
getHighWayNames
();
String
[]
highwayNames
=
getHighWayNames
();
SearchResponse
response
=
searchRequestBuilder
.
get
();
SearchResponse
response
=
searchRequestBuilder
.
get
();
//获取命中次数,查询结果有多少对象
//获取命中次数,查询结果有多少对象
SearchHits
hits
=
response
.
getHits
();
SearchHits
hits
=
response
.
getHits
();
List
<
Basehighwayalldata
>
basehighwayalldataList
=
new
ArrayList
<>();
getBaseHighWayAllDataList
(
highwayNames
,
hits
,
basehighwayalldataList
);
getBaseHighWayAllDataList
(
highwayNames
,
hits
,
basehighwayalldataList
);
}
return
basehighwayalldataList
;
return
basehighwayalldataList
;
}
}
/**
/**
...
@@ -1024,26 +1032,27 @@ public class EsUtil_fanshe {
...
@@ -1024,26 +1032,27 @@ public class EsUtil_fanshe {
*/
*/
public
static
List
<
Basehighwayalldata
>
queryHighWayLXBH
(
String
keyword
,
String
index
,
int
start
,
int
row
)
throws
Exception
{
public
static
List
<
Basehighwayalldata
>
queryHighWayLXBH
(
String
keyword
,
String
index
,
int
start
,
int
row
)
throws
Exception
{
SearchRequestBuilder
searchRequestBuilder
=
getClient
().
prepareSearch
(
index
).
setTypes
(
"aroad"
).
setFrom
(
start
).
setSize
(
row
);
SearchRequestBuilder
searchRequestBuilder
=
getClient
().
prepareSearch
(
index
).
setTypes
(
"aroad"
).
setFrom
(
start
).
setSize
(
row
);
String
maxYear
=
""
;
if
(
org
.
apache
.
commons
.
lang
.
StringUtils
.
isNotBlank
(
keyword
))
{
if
(
org
.
apache
.
commons
.
lang
.
StringUtils
.
isNotBlank
(
keyword
))
{
MatchPhraseQueryBuilder
luxianbianhao
=
QueryBuilders
.
matchPhraseQuery
(
"luxianbianhao"
,
keyword
);
MatchPhraseQueryBuilder
luxianbianhao
=
QueryBuilders
.
matchPhraseQuery
(
"luxianbianhao"
,
keyword
);
searchRequestBuilder
.
setQuery
(
luxianbianhao
).
addSort
(
"year"
,
SortOrder
.
DESC
);
searchRequestBuilder
.
setQuery
(
luxianbianhao
).
addSort
(
"year"
,
SortOrder
.
DESC
);
maxYear
=
getMaxYear
(
searchRequestBuilder
);
}
}
String
maxYear
=
getMaxYear
(
searchRequestBuilder
);
//搜索数据
//搜索数据
//SearchRequestBuilder searchRequestBuilder = getClient().prepareSearch(index).setTypes(type).setFrom(start).setSize(row);
//SearchRequestBuilder searchRequestBuilder = getClient().prepareSearch(index).setTypes(type).setFrom(start).setSize(row);
//isNotBlank(str) 等价于 str != null && str.length > 0 && str.trim().length> 0(去掉字符串两端的多余的空格的长度)
//isNotBlank(str) 等价于 str != null && str.length > 0 && str.trim().length> 0(去掉字符串两端的多余的空格的长度)
if
(
org
.
apache
.
commons
.
lang
.
StringUtils
.
isNotBlank
(
keyword
))
{
List
<
Basehighwayalldata
>
basehighwayalldataList
=
new
ArrayList
<>();
if
(
maxYear
!=
null
&&
!
""
.
equals
(
maxYear
)
&&
org
.
apache
.
commons
.
lang
.
StringUtils
.
isNotBlank
(
keyword
))
{
BoolQueryBuilder
boolQueryBuilder
=
QueryBuilders
.
boolQuery
()
BoolQueryBuilder
boolQueryBuilder
=
QueryBuilders
.
boolQuery
()
.
must
(
QueryBuilders
.
matchPhraseQuery
(
"luxianbianhao"
,
keyword
))
.
must
(
QueryBuilders
.
matchPhraseQuery
(
"luxianbianhao"
,
keyword
))
.
must
(
QueryBuilders
.
matchPhraseQuery
(
"year"
,
maxYear
));
.
must
(
QueryBuilders
.
matchPhraseQuery
(
"year"
,
maxYear
));
searchRequestBuilder
.
setQuery
(
boolQueryBuilder
);
searchRequestBuilder
.
setQuery
(
boolQueryBuilder
);
}
String
[]
highwayNames
=
getHighWayNames
();
String
[]
highwayNames
=
getHighWayNames
();
SearchResponse
response
=
searchRequestBuilder
.
get
();
SearchResponse
response
=
searchRequestBuilder
.
get
();
//获取命中次数,查询结果有多少对象
//获取命中次数,查询结果有多少对象
SearchHits
hits
=
response
.
getHits
();
SearchHits
hits
=
response
.
getHits
();
List
<
Basehighwayalldata
>
basehighwayalldataList
=
new
ArrayList
<>();
getBaseHighWayAllDataList
(
highwayNames
,
hits
,
basehighwayalldataList
);
getBaseHighWayAllDataList
(
highwayNames
,
hits
,
basehighwayalldataList
);
}
return
basehighwayalldataList
;
return
basehighwayalldataList
;
}
}
...
@@ -1087,29 +1096,33 @@ public class EsUtil_fanshe {
...
@@ -1087,29 +1096,33 @@ public class EsUtil_fanshe {
*/
*/
public
static
HashMap
<
String
,
Object
>
queryTunnel
(
String
keyword
,
String
index
,
int
start
,
int
row
)
throws
Exception
{
public
static
HashMap
<
String
,
Object
>
queryTunnel
(
String
keyword
,
String
index
,
int
start
,
int
row
)
throws
Exception
{
SearchRequestBuilder
searchRequestBuilder
=
getClient
().
prepareSearch
(
index
).
setTypes
(
"aroad"
).
setFrom
(
start
).
setSize
(
row
);
SearchRequestBuilder
searchRequestBuilder
=
getClient
().
prepareSearch
(
index
).
setTypes
(
"aroad"
).
setFrom
(
start
).
setSize
(
row
);
String
maxYear
=
""
;
if
(
org
.
apache
.
commons
.
lang
.
StringUtils
.
isNotBlank
(
keyword
))
{
if
(
org
.
apache
.
commons
.
lang
.
StringUtils
.
isNotBlank
(
keyword
))
{
MatchQueryBuilder
suidaomingcheng
=
QueryBuilders
.
matchQuery
(
"suidaomingcheng"
,
keyword
);
MatchQueryBuilder
suidaomingcheng
=
QueryBuilders
.
matchQuery
(
"suidaomingcheng"
,
keyword
);
searchRequestBuilder
.
setQuery
(
suidaomingcheng
).
addSort
(
"year"
,
SortOrder
.
DESC
);
searchRequestBuilder
.
setQuery
(
suidaomingcheng
).
addSort
(
"year"
,
SortOrder
.
DESC
);
maxYear
=
getMaxYear
(
searchRequestBuilder
);
}
}
String
maxYear
=
getMaxYear
(
searchRequestBuilder
);
//搜索数据
//搜索数据
//isNotBlank(str) 等价于 str != null && str.length > 0 && str.trim().length> 0(去掉字符串两端的多余的空格的长度)
//isNotBlank(str) 等价于 str != null && str.length > 0 && str.trim().length> 0(去掉字符串两端的多余的空格的长度)
if
(
org
.
apache
.
commons
.
lang
.
StringUtils
.
isNotBlank
(
keyword
))
{
long
totalHits
=
0
;
List
<
Basetunnelalldata
>
basetunnelalldataList
=
new
ArrayList
<>();
if
(
maxYear
!=
null
&&
!
""
.
equals
(
maxYear
)
&&
org
.
apache
.
commons
.
lang
.
StringUtils
.
isNotBlank
(
keyword
))
{
//multiMatchQuery多个字段匹配某一个值
//multiMatchQuery多个字段匹配某一个值
//multiMatchQuery(text,fields)其中的fields是字段的名字,可以写好几个,每一个中间用逗号分隔
//multiMatchQuery(text,fields)其中的fields是字段的名字,可以写好几个,每一个中间用逗号分隔
BoolQueryBuilder
boolquery
=
QueryBuilders
.
boolQuery
()
BoolQueryBuilder
boolquery
=
QueryBuilders
.
boolQuery
()
.
must
(
QueryBuilders
.
matchQuery
(
"suidaomingcheng"
,
keyword
))
.
must
(
QueryBuilders
.
matchQuery
(
"suidaomingcheng"
,
keyword
))
.
must
(
QueryBuilders
.
matchPhraseQuery
(
"year"
,
maxYear
));
.
must
(
QueryBuilders
.
matchPhraseQuery
(
"year"
,
maxYear
));
searchRequestBuilder
.
setQuery
(
boolquery
);
searchRequestBuilder
.
setQuery
(
boolquery
);
}
String
[]
basicTunnelNames
=
getBasicTunnelNames
();
String
[]
basicTunnelNames
=
getBasicTunnelNames
();
SearchResponse
response
=
searchRequestBuilder
.
get
();
SearchResponse
response
=
searchRequestBuilder
.
get
();
//获取命中次数,查询结果有多少对象
//获取命中次数,查询结果有多少对象
SearchHits
hits
=
response
.
getHits
();
SearchHits
hits
=
response
.
getHits
();
List
<
Basetunnelalldata
>
basetunnelalldataList
=
new
ArrayList
<>();
getBaseTunnelAllDataList
(
basicTunnelNames
,
hits
,
basetunnelalldataList
);
getBaseTunnelAllDataList
(
basicTunnelNames
,
hits
,
basetunnelalldataList
);
totalHits
=
hits
.
getTotalHits
();
}
long
finalTotalHits
=
totalHits
;
return
new
HashMap
<
String
,
Object
>()
{{
return
new
HashMap
<
String
,
Object
>()
{{
put
(
"total"
,
hits
.
getTotalHits
()
);
put
(
"total"
,
finalTotalHits
);
put
(
"list"
,
basetunnelalldataList
);
put
(
"list"
,
basetunnelalldataList
);
}};
}};
}
}
...
@@ -1151,29 +1164,33 @@ public class EsUtil_fanshe {
...
@@ -1151,29 +1164,33 @@ public class EsUtil_fanshe {
*/
*/
public
static
HashMap
<
String
,
Object
>
queryBaseRoadTollString
(
String
keyword
,
String
index
,
int
start
,
int
row
)
throws
Exception
{
public
static
HashMap
<
String
,
Object
>
queryBaseRoadTollString
(
String
keyword
,
String
index
,
int
start
,
int
row
)
throws
Exception
{
SearchRequestBuilder
searchRequestBuilder
=
getClient
().
prepareSearch
(
index
).
setTypes
(
"aroad"
).
setFrom
(
start
).
setSize
(
row
);
SearchRequestBuilder
searchRequestBuilder
=
getClient
().
prepareSearch
(
index
).
setTypes
(
"aroad"
).
setFrom
(
start
).
setSize
(
row
);
String
maxYear
=
""
;
if
(
org
.
apache
.
commons
.
lang
.
StringUtils
.
isNotBlank
(
keyword
))
{
if
(
org
.
apache
.
commons
.
lang
.
StringUtils
.
isNotBlank
(
keyword
))
{
MatchQueryBuilder
matchQuery
=
QueryBuilders
.
matchQuery
(
"name"
,
keyword
);
MatchQueryBuilder
matchQuery
=
QueryBuilders
.
matchQuery
(
"name"
,
keyword
);
searchRequestBuilder
.
setQuery
(
matchQuery
).
addSort
(
"year"
,
SortOrder
.
DESC
);
searchRequestBuilder
.
setQuery
(
matchQuery
).
addSort
(
"year"
,
SortOrder
.
DESC
);
maxYear
=
getMaxYear
(
searchRequestBuilder
);
}
}
String
maxYear
=
getMaxYear
(
searchRequestBuilder
);
//搜索数据
//搜索数据
//isNotBlank(str) 等价于 str != null && str.length > 0 && str.trim().length> 0(去掉字符串两端的多余的空格的长度)
//isNotBlank(str) 等价于 str != null && str.length > 0 && str.trim().length> 0(去掉字符串两端的多余的空格的长度)
if
(
org
.
apache
.
commons
.
lang
.
StringUtils
.
isNotBlank
(
keyword
))
{
ArrayList
<
BaseRoadToll_String
>
baseRoadTollStrings
=
new
ArrayList
<>();
long
totalHits
=
0
;
if
(
maxYear
!=
null
&&
!
""
.
equals
(
maxYear
)
&&
org
.
apache
.
commons
.
lang
.
StringUtils
.
isNotBlank
(
keyword
))
{
//multiMatchQuery多个字段匹配某一个值
//multiMatchQuery多个字段匹配某一个值
//multiMatchQuery(text,fields)其中的fields是字段的名字,可以写好几个,每一个中间用逗号分隔
//multiMatchQuery(text,fields)其中的fields是字段的名字,可以写好几个,每一个中间用逗号分隔
BoolQueryBuilder
boolquery
=
QueryBuilders
.
boolQuery
()
BoolQueryBuilder
boolquery
=
QueryBuilders
.
boolQuery
()
.
must
(
QueryBuilders
.
matchQuery
(
"name"
,
keyword
))
.
must
(
QueryBuilders
.
matchQuery
(
"name"
,
keyword
))
.
must
(
QueryBuilders
.
matchPhraseQuery
(
"year"
,
maxYear
));
.
must
(
QueryBuilders
.
matchPhraseQuery
(
"year"
,
maxYear
));
searchRequestBuilder
.
setQuery
(
boolquery
);
searchRequestBuilder
.
setQuery
(
boolquery
);
}
String
[]
baseRoadTollNames
=
getBaseRoadTollNames
();
String
[]
baseRoadTollNames
=
getBaseRoadTollNames
();
SearchResponse
response
=
searchRequestBuilder
.
get
();
SearchResponse
response
=
searchRequestBuilder
.
get
();
//获取命中次数,查询结果有多少对象
//获取命中次数,查询结果有多少对象
SearchHits
hits
=
response
.
getHits
();
SearchHits
hits
=
response
.
getHits
();
ArrayList
<
BaseRoadToll_String
>
baseRoadTollStrings
=
new
ArrayList
<>();
getBaseRoadTollStrings
(
baseRoadTollNames
,
hits
,
baseRoadTollStrings
);
getBaseRoadTollStrings
(
baseRoadTollNames
,
hits
,
baseRoadTollStrings
);
totalHits
=
hits
.
getTotalHits
();
}
long
finalTotalHits
=
totalHits
;
return
new
HashMap
<
String
,
Object
>()
{{
return
new
HashMap
<
String
,
Object
>()
{{
put
(
"total"
,
hits
.
getTotalHits
()
);
put
(
"total"
,
finalTotalHits
);
put
(
"list"
,
baseRoadTollStrings
);
put
(
"list"
,
baseRoadTollStrings
);
}};
}};
}
}
...
@@ -1214,27 +1231,31 @@ public class EsUtil_fanshe {
...
@@ -1214,27 +1231,31 @@ public class EsUtil_fanshe {
*/
*/
public
static
HashMap
<
String
,
Object
>
queryBaseHighWayService
(
String
keyword
,
String
index
,
int
start
,
int
row
)
throws
Exception
{
public
static
HashMap
<
String
,
Object
>
queryBaseHighWayService
(
String
keyword
,
String
index
,
int
start
,
int
row
)
throws
Exception
{
SearchRequestBuilder
searchRequestBuilder
=
getClient
().
prepareSearch
(
index
).
setTypes
(
"aroad"
).
setFrom
(
start
).
setSize
(
row
);
SearchRequestBuilder
searchRequestBuilder
=
getClient
().
prepareSearch
(
index
).
setTypes
(
"aroad"
).
setFrom
(
start
).
setSize
(
row
);
String
maxYear
=
""
;
if
(
org
.
apache
.
commons
.
lang
.
StringUtils
.
isNotBlank
(
keyword
))
{
if
(
org
.
apache
.
commons
.
lang
.
StringUtils
.
isNotBlank
(
keyword
))
{
MatchQueryBuilder
fwssmc
=
QueryBuilders
.
matchQuery
(
"fwssmc"
,
keyword
);
MatchQueryBuilder
fwssmc
=
QueryBuilders
.
matchQuery
(
"fwssmc"
,
keyword
);
searchRequestBuilder
.
setQuery
(
fwssmc
).
addSort
(
"year"
,
SortOrder
.
DESC
);
searchRequestBuilder
.
setQuery
(
fwssmc
).
addSort
(
"year"
,
SortOrder
.
DESC
);
maxYear
=
getMaxYear
(
searchRequestBuilder
);
}
}
String
maxYear
=
getMaxYear
(
searchRequestBuilder
);
//搜索数据
//搜索数据
//isNotBlank(str) 等价于 str != null && str.length > 0 && str.trim().length> 0(去掉字符串两端的多余的空格的长度)
//isNotBlank(str) 等价于 str != null && str.length > 0 && str.trim().length> 0(去掉字符串两端的多余的空格的长度)
if
(
org
.
apache
.
commons
.
lang
.
StringUtils
.
isNotBlank
(
keyword
))
{
List
<
BaseHighWayService
>
baseHighWayServices
=
new
ArrayList
<>();
long
totalHits
=
0
;
if
(
maxYear
!=
null
&&
!
""
.
equals
(
maxYear
)
&&
org
.
apache
.
commons
.
lang
.
StringUtils
.
isNotBlank
(
keyword
))
{
BoolQueryBuilder
boolquery
=
QueryBuilders
.
boolQuery
()
BoolQueryBuilder
boolquery
=
QueryBuilders
.
boolQuery
()
.
must
(
QueryBuilders
.
matchQuery
(
"fwssmc"
,
keyword
))
.
must
(
QueryBuilders
.
matchQuery
(
"fwssmc"
,
keyword
))
.
must
(
QueryBuilders
.
matchPhraseQuery
(
"year"
,
maxYear
));
.
must
(
QueryBuilders
.
matchPhraseQuery
(
"year"
,
maxYear
));
searchRequestBuilder
.
setQuery
(
boolquery
);
searchRequestBuilder
.
setQuery
(
boolquery
);
}
String
[]
baseHighWayServiceNames
=
getBaseHighWayServiceNames
();
String
[]
baseHighWayServiceNames
=
getBaseHighWayServiceNames
();
SearchResponse
response
=
searchRequestBuilder
.
get
();
SearchResponse
response
=
searchRequestBuilder
.
get
();
//获取命中次数,查询结果有多少对象
//获取命中次数,查询结果有多少对象
SearchHits
hits
=
response
.
getHits
();
SearchHits
hits
=
response
.
getHits
();
List
<
BaseHighWayService
>
baseHighWayServices
=
new
ArrayList
<>();
getBaseHighWayServices
(
baseHighWayServiceNames
,
hits
,
baseHighWayServices
);
getBaseHighWayServices
(
baseHighWayServiceNames
,
hits
,
baseHighWayServices
);
totalHits
=
hits
.
getTotalHits
();
}
long
finalTotalHits
=
totalHits
;
return
new
HashMap
<
String
,
Object
>()
{{
return
new
HashMap
<
String
,
Object
>()
{{
put
(
"total"
,
hits
.
getTotalHits
()
);
put
(
"total"
,
finalTotalHits
);
put
(
"list"
,
baseHighWayServices
);
put
(
"list"
,
baseHighWayServices
);
}};
}};
}
}
...
...
src/main/java/com/elephant/framework/galaxy/aroad/module/szgl/controller/SzglController.java
浏览文件 @
82edd278
...
@@ -15,6 +15,7 @@ import lombok.AllArgsConstructor;
...
@@ -15,6 +15,7 @@ import lombok.AllArgsConstructor;
import
org.apache.commons.lang.StringEscapeUtils
;
import
org.apache.commons.lang.StringEscapeUtils
;
import
org.springframework.beans.factory.annotation.Value
;
import
org.springframework.beans.factory.annotation.Value
;
import
org.springframework.http.ResponseEntity
;
import
org.springframework.http.ResponseEntity
;
import
org.springframework.util.ObjectUtils
;
import
org.springframework.web.bind.annotation.*
;
import
org.springframework.web.bind.annotation.*
;
import
org.springframework.web.client.RestTemplate
;
import
org.springframework.web.client.RestTemplate
;
...
@@ -47,6 +48,7 @@ public class SzglController {
...
@@ -47,6 +48,7 @@ public class SzglController {
case
"路线"
:
case
"路线"
:
Baseindexdata
lx
=
baseindexdataService
.
selectLatesByTableName
(
"basehighwayalldata"
);
Baseindexdata
lx
=
baseindexdataService
.
selectLatesByTableName
(
"basehighwayalldata"
);
Map
<
String
,
Object
>
lukehighways
=
EsUtil_fanshe
.
queryHighWay
(
keyword
,
"basehighwayalldata"
,
(
int
)
((
page
.
getCurrent
()
-
1
)
*
page
.
getSize
()),
(
int
)
page
.
getSize
());
Map
<
String
,
Object
>
lukehighways
=
EsUtil_fanshe
.
queryHighWay
(
keyword
,
"basehighwayalldata"
,
(
int
)
((
page
.
getCurrent
()
-
1
)
*
page
.
getSize
()),
(
int
)
page
.
getSize
());
if
(!
ObjectUtils
.
isEmpty
(
lukehighways
.
get
(
"list"
))){
for
(
Basehighwayalldata
basehighwayalldata
:
(
List
<
Basehighwayalldata
>)
lukehighways
.
get
(
"list"
))
{
for
(
Basehighwayalldata
basehighwayalldata
:
(
List
<
Basehighwayalldata
>)
lukehighways
.
get
(
"list"
))
{
responseList
.
add
(
new
HashMap
<
String
,
Object
>()
{{
responseList
.
add
(
new
HashMap
<
String
,
Object
>()
{{
put
(
"name"
,
basehighwayalldata
.
getLuxianmingcheng
());
put
(
"name"
,
basehighwayalldata
.
getLuxianmingcheng
());
...
@@ -57,11 +59,14 @@ public class SzglController {
...
@@ -57,11 +59,14 @@ public class SzglController {
put
(
"total"
,
lukehighways
.
get
(
"total"
));
put
(
"total"
,
lukehighways
.
get
(
"total"
));
}});
}});
}
}
}
total
+=
(
long
)
lukehighways
.
get
(
"total"
);
total
+=
(
long
)
lukehighways
.
get
(
"total"
);
break
;
break
;
case
"桥梁"
:
case
"桥梁"
:
Baseindexdata
ql
=
baseindexdataService
.
selectLatesByTableName
(
"basebridgealldata"
);
Baseindexdata
ql
=
baseindexdataService
.
selectLatesByTableName
(
"basebridgealldata"
);
Map
<
String
,
Object
>
luKeBridges
=
EsUtil_fanshe
.
queryBridge
(
keyword
,
"basebridgealldata"
,
(
int
)
((
page
.
getCurrent
()
-
1
)
*
page
.
getSize
()),
(
int
)
page
.
getSize
());
Map
<
String
,
Object
>
luKeBridges
=
EsUtil_fanshe
.
queryBridge
(
keyword
,
"basebridgealldata"
,
(
int
)
((
page
.
getCurrent
()
-
1
)
*
page
.
getSize
()),
(
int
)
page
.
getSize
());
if
(!
ObjectUtils
.
isEmpty
(
luKeBridges
.
get
(
"list"
))){
for
(
Basebridgealldata
lnKeBridge
:
(
List
<
Basebridgealldata
>)
luKeBridges
.
get
(
"list"
))
{
for
(
Basebridgealldata
lnKeBridge
:
(
List
<
Basebridgealldata
>)
luKeBridges
.
get
(
"list"
))
{
responseList
.
add
(
new
HashMap
<
String
,
Object
>()
{{
responseList
.
add
(
new
HashMap
<
String
,
Object
>()
{{
put
(
"name"
,
lnKeBridge
.
getQiaoliangmingcheng
());
put
(
"name"
,
lnKeBridge
.
getQiaoliangmingcheng
());
...
@@ -70,11 +75,13 @@ public class SzglController {
...
@@ -70,11 +75,13 @@ public class SzglController {
put
(
"data"
,
lnKeBridge
);
put
(
"data"
,
lnKeBridge
);
}});
}});
}
}
}
total
+=
(
long
)
luKeBridges
.
get
(
"total"
);
total
+=
(
long
)
luKeBridges
.
get
(
"total"
);
break
;
break
;
case
"隧道"
:
case
"隧道"
:
Baseindexdata
sd
=
baseindexdataService
.
selectLatesByTableName
(
"basetunnelalldata"
);
Baseindexdata
sd
=
baseindexdataService
.
selectLatesByTableName
(
"basetunnelalldata"
);
Map
<
String
,
Object
>
basicTunnels
=
EsUtil_fanshe
.
queryTunnel
(
keyword
,
"basetunnelalldata"
,
(
int
)
((
page
.
getCurrent
()
-
1
)
*
page
.
getSize
()),
(
int
)
page
.
getSize
());
Map
<
String
,
Object
>
basicTunnels
=
EsUtil_fanshe
.
queryTunnel
(
keyword
,
"basetunnelalldata"
,
(
int
)
((
page
.
getCurrent
()
-
1
)
*
page
.
getSize
()),
(
int
)
page
.
getSize
());
if
(!
ObjectUtils
.
isEmpty
(
basicTunnels
.
get
(
"list"
))){
for
(
Basetunnelalldata
basicTunnel
:
(
List
<
Basetunnelalldata
>)
basicTunnels
.
get
(
"list"
))
{
for
(
Basetunnelalldata
basicTunnel
:
(
List
<
Basetunnelalldata
>)
basicTunnels
.
get
(
"list"
))
{
responseList
.
add
(
new
HashMap
<
String
,
Object
>()
{{
responseList
.
add
(
new
HashMap
<
String
,
Object
>()
{{
put
(
"name"
,
basicTunnel
.
getSuidaomingcheng
());
put
(
"name"
,
basicTunnel
.
getSuidaomingcheng
());
...
@@ -84,6 +91,7 @@ public class SzglController {
...
@@ -84,6 +91,7 @@ public class SzglController {
put
(
"total"
,
basicTunnels
.
get
(
"total"
));
put
(
"total"
,
basicTunnels
.
get
(
"total"
));
}});
}});
}
}
}
total
+=
(
long
)
basicTunnels
.
get
(
"total"
);
total
+=
(
long
)
basicTunnels
.
get
(
"total"
);
break
;
break
;
}
}
...
...
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论