Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
A
amos-boot-biz
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
项目统一框架
amos-boot-biz
Commits
f2f63ea9
Commit
f2f63ea9
authored
Jul 10, 2025
by
tianyiming
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
修改bug
parent
5bbd5ec0
Hide whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
149 additions
and
62 deletions
+149
-62
EquipStateEnum.java
...amos/boot/module/statistics/api/enums/EquipStateEnum.java
+2
-1
UnitTypeNewEnum.java
...mos/boot/module/statistics/api/enums/UnitTypeNewEnum.java
+17
-16
ComprehensiveStatisticalAnalysisController.java
...ontroller/ComprehensiveStatisticalAnalysisController.java
+11
-0
ComprehensiveStatisticalAnalysisServiceImpl.java
...ice/impl/ComprehensiveStatisticalAnalysisServiceImpl.java
+119
-45
No files found.
amos-boot-system-tzs/amos-boot-module-statistics/amos-boot-module-statistics-api/src/main/java/com/yeejoin/amos/boot/module/statistics/api/enums/EquipStateEnum.java
View file @
f2f63ea9
...
...
@@ -21,7 +21,8 @@ public enum EquipStateEnum {
ZY
(
"在用"
,
"1"
),
TY
(
"停用"
,
"2"
),
ZX
(
"注销"
,
"4"
),
BF
(
"报废"
,
"3"
)
BF
(
"报废"
,
"3"
),
WZT
(
"无状态"
,
"99"
),
;
private
String
name
;
...
...
amos-boot-system-tzs/amos-boot-module-statistics/amos-boot-module-statistics-api/src/main/java/com/yeejoin/amos/boot/module/statistics/api/enums/UnitTypeNewEnum.java
View file @
f2f63ea9
...
...
@@ -17,27 +17,28 @@ public enum UnitTypeNewEnum {
* *注册单位类型
*/
sydw
(
"企业"
,
"1232"
,
"use"
),
czdw
(
"充装单位"
,
"1231"
,
"license"
),
jydw
(
"检验单位"
,
"1233"
,
"license"
),
jcdw
(
"检测单位"
,
"1233"
,
"license"
),
azgzwxdw
(
"安装改造维修单位"
,
"1234"
,
"license"
),
zzdw
(
"制造单位"
,
"1236"
,
"license"
),
sjdw
(
"设计单位"
,
"1235"
,
"license"
),
grzt
(
"个人主体"
,
"6599"
,
"use"
);
sydw
(
"企业"
,
"使用单位"
,
"1232"
,
"use"
),
czdw
(
"充装单位"
,
"
充装单位"
,
"
1231"
,
"license"
),
jydw
(
"检验单位"
,
"
检验单位"
,
"
1233"
,
"license"
),
jcdw
(
"检测单位"
,
"
检测单位"
,
"
1233"
,
"license"
),
azgzwxdw
(
"安装改造维修单位"
,
"
安装改造维修单位"
,
"
1234"
,
"license"
),
zzdw
(
"制造单位"
,
"
制造单位"
,
"
1236"
,
"license"
),
sjdw
(
"设计单位"
,
"
设计单位"
,
"
1235"
,
"license"
),
grzt
(
"个人主体"
,
"
个人主体"
,
"
6599"
,
"use"
);
private
String
name
;
private
String
label
;
private
String
value
;
private
String
code
;
private
String
type
;
public
static
Map
<
String
,
String
>
get
Nam
e
=
new
HashMap
<>();
public
static
Map
<
String
,
String
>
get
Valu
e
=
new
HashMap
<>();
public
static
Map
<
String
,
String
>
getCode
=
new
HashMap
<>();
static
{
for
(
UnitTypeNewEnum
e
:
UnitTypeNewEnum
.
values
())
{
get
Name
.
put
(
e
.
code
,
e
.
nam
e
);
getCode
.
put
(
e
.
nam
e
,
e
.
code
);
get
Value
.
put
(
e
.
code
,
e
.
valu
e
);
getCode
.
put
(
e
.
valu
e
,
e
.
code
);
}
}
...
...
@@ -45,8 +46,8 @@ public enum UnitTypeNewEnum {
JSONArray
jsonArray
=
new
JSONArray
();
for
(
UnitTypeNewEnum
e
:
UnitTypeNewEnum
.
values
())
{
JSONObject
jsonObject
=
new
JSONObject
();
jsonObject
.
put
(
"label"
,
e
.
name
);
jsonObject
.
put
(
"value"
,
e
.
nam
e
);
jsonObject
.
put
(
"label"
,
e
.
label
);
jsonObject
.
put
(
"value"
,
e
.
valu
e
);
jsonObject
.
put
(
"key"
,
e
.
code
);
jsonArray
.
add
(
jsonObject
);
}
...
...
@@ -61,8 +62,8 @@ public enum UnitTypeNewEnum {
for
(
UnitTypeNewEnum
e
:
UnitTypeNewEnum
.
values
())
{
if
(
e
.
type
.
equals
(
category
))
{
JSONObject
jsonObject
=
new
JSONObject
();
jsonObject
.
put
(
"label"
,
e
.
name
);
jsonObject
.
put
(
"value"
,
e
.
nam
e
);
jsonObject
.
put
(
"label"
,
e
.
label
);
jsonObject
.
put
(
"value"
,
e
.
valu
e
);
jsonObject
.
put
(
"key"
,
e
.
code
);
jsonArray
.
add
(
jsonObject
);
}
...
...
amos-boot-system-tzs/amos-boot-module-statistics/amos-boot-module-statistics-biz/src/main/java/com/yeejoin/amos/boot/module/statistcs/biz/controller/ComprehensiveStatisticalAnalysisController.java
View file @
f2f63ea9
...
...
@@ -127,6 +127,17 @@ public class ComprehensiveStatisticalAnalysisController extends BaseController {
* @return
*/
@TycloudOperation
(
ApiLevel
=
UserType
.
AGENCY
)
@GetMapping
(
value
=
"/select/queryRYLX"
)
@ApiOperation
(
httpMethod
=
"GET"
,
value
=
"高级筛选查询人员类型"
,
notes
=
"高级筛选查询人员类型"
)
public
ResponseModel
<
JSONArray
>
queryRYLX
(
@RequestParam
(
required
=
false
)
String
type
)
{
return
ResponseHelper
.
buildResponse
(
statisticalAnalysisService
.
queryRYLX
(
type
));
}
/**
* @param
* @return
*/
@TycloudOperation
(
ApiLevel
=
UserType
.
AGENCY
)
@GetMapping
(
value
=
"/select/queryZYXM"
)
@ApiOperation
(
httpMethod
=
"GET"
,
value
=
"查询作业项目"
,
notes
=
"查询作业项目"
)
public
ResponseModel
<
JSONArray
>
queryZYXM
(
@RequestParam
String
type
)
{
...
...
amos-boot-system-tzs/amos-boot-module-statistics/amos-boot-module-statistics-biz/src/main/java/com/yeejoin/amos/boot/module/statistcs/biz/service/impl/ComprehensiveStatisticalAnalysisServiceImpl.java
View file @
f2f63ea9
...
...
@@ -254,6 +254,7 @@ public class ComprehensiveStatisticalAnalysisServiceImpl {
if
(!
ObjectUtils
.
isEmpty
(
filter
.
get
(
"filterParams"
)))
{
filterParams
=
JSONObject
.
parseObject
(
JSONObject
.
toJSONString
(
filter
.
get
(
"filterParams"
)));
String
filterType
=
filter
.
getString
(
"filterType"
);
deleteUnitCategory
(
filterParams
);
//快捷筛选和自定义筛选解析筛选规则不一致
if
(
filterType
.
equals
(
"advanced"
))
{
filterParams
.
forEach
((
k
,
v
)
->
{
...
...
@@ -261,11 +262,18 @@ public class ComprehensiveStatisticalAnalysisServiceImpl {
if
(!((
JSONArray
)
v
).
contains
(
"all"
)
&&
((
JSONArray
)
v
).
size
()
>
0
)
{
String
field
=
k
;
if
(
k
.
equals
(
"newPost"
)
||
k
.
equals
(
"subPost"
)
||
k
.
equals
(
"equipType"
))
{
DynamicQueryBuilder
dynamicQueryBuilder
=
new
DynamicQueryBuilder
();
EnhancedDynamicQueryBuilder
enhancedDynamicQueryBuilder
=
new
EnhancedDynamicQueryBuilder
();
((
JSONArray
)
v
).
forEach
(
item
->
enhancedDynamicQueryBuilder
.
add
(
QueryBuilders
.
wildcardQuery
(
field
,
"*"
+
item
+
"*"
),
or
));
boolMust
.
should
(
enhancedDynamicQueryBuilder
.
build
()).
minimumShouldMatch
(
1
);
dynamicQueryBuilder
.
and
(
enhancedDynamicQueryBuilder
.
build
().
minimumShouldMatch
(
1
));
boolMust
.
must
(
dynamicQueryBuilder
.
build
());
}
else
if
(
k
.
equals
(
"unitType"
))
{
((
JSONArray
)
v
).
forEach
(
item
->
boolMust
.
should
(
QueryBuilders
.
wildcardQuery
(
field
+
".keyword"
,
"*"
+
(
item
.
equals
(
"企业"
)
?
"使用单位"
:
item
)
+
"*"
)).
minimumShouldMatch
(
1
));
DynamicQueryBuilder
dynamicQueryBuilder
=
new
DynamicQueryBuilder
();
EnhancedDynamicQueryBuilder
enhancedDynamicQueryBuilder
=
new
EnhancedDynamicQueryBuilder
();
((
JSONArray
)
v
).
forEach
(
item
->
enhancedDynamicQueryBuilder
.
add
(
QueryBuilders
.
wildcardQuery
(
field
+
".keyword"
,
"*"
+
item
+
"*"
),
or
));
dynamicQueryBuilder
.
and
(
enhancedDynamicQueryBuilder
.
build
().
minimumShouldMatch
(
1
));
boolMust
.
must
(
dynamicQueryBuilder
.
build
());
}
else
if
(
k
.
equals
(
"education"
))
{
TermsQueryBuilder
termsQuery
=
QueryBuilders
.
termsQuery
(
field
,
(
JSONArray
)
v
);
boolMust
.
must
(
termsQuery
);
...
...
@@ -283,29 +291,33 @@ public class ComprehensiveStatisticalAnalysisServiceImpl {
ScoreMode
.
Avg
);
// 以下人员类型有资质要求
// 人员类型(newPost):检验人员:66151、检测人员:66152
// 人员类型(newPost):检验人员:66151、检测人员:66152
、作业人员:6552、检查人员:6763
// 人员子类型(subPost): 持证人员:6713、持证人员(P):6764、持证人员(R2):6765
if
(
item
.
equals
(
"1"
))
{
boolMust
.
must
(
nestedQuery
);
}
else
if
(
item
.
equals
(
"0"
))
{
// 无资质
BoolQueryBuilder
queryBuilder
=
QueryBuilders
.
boolQuery
()
.
should
(
QueryBuilders
.
wildcardQuery
(
"newPost.keyword"
,
"*66151*"
))
.
should
(
QueryBuilders
.
wildcardQuery
(
"newPost.keyword"
,
"*66152*"
))
.
should
(
QueryBuilders
.
wildcardQuery
(
"subPost.keyword"
,
"*6713*"
))
.
should
(
QueryBuilders
.
wildcardQuery
(
"subPost.keyword"
,
"*6764*"
))
.
should
(
QueryBuilders
.
wildcardQuery
(
"subPost.keyword"
,
"*6765*"
))
.
should
(
QueryBuilders
.
wildcardQuery
(
"newPost"
,
"*66151*"
))
.
should
(
QueryBuilders
.
wildcardQuery
(
"newPost"
,
"*66152*"
))
.
should
(
QueryBuilders
.
wildcardQuery
(
"newPost"
,
"*6552*"
))
.
should
(
QueryBuilders
.
wildcardQuery
(
"newPost"
,
"*6763*"
))
.
should
(
QueryBuilders
.
wildcardQuery
(
"subPost"
,
"*6713*"
))
.
should
(
QueryBuilders
.
wildcardQuery
(
"subPost"
,
"*6764*"
))
.
should
(
QueryBuilders
.
wildcardQuery
(
"subPost"
,
"*6765*"
))
.
minimumShouldMatch
(
1
);
boolMust
.
must
(
queryBuilder
);
boolMust
.
mustNot
(
nestedQuery
);
}
else
{
// 无资质要求
BoolQueryBuilder
queryBuilder
=
QueryBuilders
.
boolQuery
()
.
mustNot
(
QueryBuilders
.
wildcardQuery
(
"newPost.keyword"
,
"*66151*"
))
.
mustNot
(
QueryBuilders
.
wildcardQuery
(
"newPost.keyword"
,
"*66152*"
))
.
mustNot
(
QueryBuilders
.
wildcardQuery
(
"subPost.keyword"
,
"*6713*"
))
.
mustNot
(
QueryBuilders
.
wildcardQuery
(
"subPost.keyword"
,
"*6764*"
))
.
mustNot
(
QueryBuilders
.
wildcardQuery
(
"subPost.keyword"
,
"*6765*"
));
.
mustNot
(
QueryBuilders
.
wildcardQuery
(
"newPost"
,
"*66151*"
))
.
mustNot
(
QueryBuilders
.
wildcardQuery
(
"newPost"
,
"*66152*"
))
.
mustNot
(
QueryBuilders
.
wildcardQuery
(
"newPost"
,
"*6552*"
))
.
mustNot
(
QueryBuilders
.
wildcardQuery
(
"newPost"
,
"*6763*"
))
.
mustNot
(
QueryBuilders
.
wildcardQuery
(
"subPost"
,
"*6713*"
))
.
mustNot
(
QueryBuilders
.
wildcardQuery
(
"subPost"
,
"*6764*"
))
.
mustNot
(
QueryBuilders
.
wildcardQuery
(
"subPost"
,
"*6765*"
));
boolMust
.
must
(
queryBuilder
);
}
}
else
if
(
k
.
equals
(
"expiryDate"
))
{
...
...
@@ -375,7 +387,7 @@ public class ComprehensiveStatisticalAnalysisServiceImpl {
String
category
=
v
.
toString
();
JSONArray
unitTypeByType
=
UnitTypeNewEnum
.
getUnitTypeByType
(
category
);
List
<
String
>
list
=
unitTypeByType
.
stream
().
map
(
e
->
JSONObject
.
parseObject
(
JSONObject
.
toJSONString
(
e
)).
get
(
"value"
).
toString
()).
collect
(
Collectors
.
toList
());
list
.
forEach
(
item
->
boolMust
.
should
(
QueryBuilders
.
wildcardQuery
(
"unitType.keyword"
,
"*"
+
(
item
.
equals
(
"企业"
)
?
"使用单位"
:
item
)
+
"*"
)).
minimumShouldMatch
(
1
));
list
.
forEach
(
item
->
boolMust
.
should
(
QueryBuilders
.
wildcardQuery
(
"unitType.keyword"
,
"*"
+
item
+
"*"
)).
minimumShouldMatch
(
1
));
}
}
}
...
...
@@ -429,16 +441,20 @@ public class ComprehensiveStatisticalAnalysisServiceImpl {
String
licensesStauts
=
""
;
if
(
dto
.
containsKey
(
"licenses"
))
{
// 以下人员类型有资质要求
// 人员类型(newPost):检验人员:66151、检测人员:66152
// 人员类型(newPost):检验人员:66151、检测人员:66152
、作业人员:6552、检查人员:6763
// 人员子类型(subPost): 持证人员:6713、持证人员(P):6764、持证人员(R2):6765
String
newPost
=
ObjectUtils
.
isEmpty
(
dto
.
getString
(
"newPost"
))
?
""
:
dto
.
getString
(
"newPost"
);
String
subPost
=
ObjectUtils
.
isEmpty
(
dto
.
getString
(
"subPost"
))
?
""
:
dto
.
getString
(
"subPost"
);
if
(
newPost
.
contains
(
"66151"
)
||
newPost
.
contains
(
"66152"
)
||
subPost
.
contains
(
"6713"
)
||
subPost
.
contains
(
"6764"
)
||
subPost
.
contains
(
"6765"
))
{
if
(
newPost
.
contains
(
"66151"
)
||
newPost
.
contains
(
"66152"
)
||
newPost
.
contains
(
"6763"
)
||
newPost
.
contains
(
"6552"
)
||
subPost
.
contains
(
"6713"
)
||
subPost
.
contains
(
"6764"
)
||
subPost
.
contains
(
"6765"
))
{
JSONArray
licenses
=
dto
.
getJSONArray
(
"licenses"
);
if
(!
ObjectUtils
.
isEmpty
(
licenses
))
{
List
<
String
>
permissionStatusList
=
new
ArrayList
<>();
for
(
Object
object
:
licenses
)
{
JSONObject
json
=
JSONObject
.
parseObject
(
JSONObject
.
toJSONString
(
object
));
if
(!
json
.
containsKey
(
"certNo"
))
{
licensesStauts
=
"无资质"
;
continue
;
}
String
expiryDate
=
json
.
getString
(
"expiryDate"
);
if
(!
ObjectUtils
.
isEmpty
(
expiryDate
))
{
long
daysBetween
=
ChronoUnit
.
DAYS
.
between
(
LocalDate
.
now
(),
LocalDate
.
parse
(
expiryDate
,
formatter
));
...
...
@@ -505,9 +521,7 @@ public class ComprehensiveStatisticalAnalysisServiceImpl {
if
(!
ObjectUtils
.
isEmpty
(
filter
.
get
(
"filterParams"
)))
{
filterParams
=
JSONObject
.
parseObject
(
JSONObject
.
toJSONString
(
filter
.
get
(
"filterParams"
)));
String
filterType
=
filter
.
getString
(
"filterType"
);
if
(
filterParams
.
containsKey
(
"unitType"
)
&&
!
filterParams
.
getString
(
"unitType"
).
contains
(
"all"
)
&&
!
filterParams
.
getString
(
"unitType"
).
contains
(
"[]"
))
{
filterParams
.
remove
(
"unitCategory"
);
}
deleteUnitCategory
(
filterParams
);
//快捷筛选和自定义筛选解析筛选规则不一致
if
(
filterType
.
equals
(
"advanced"
))
{
filterParams
.
forEach
((
k
,
v
)
->
{
...
...
@@ -515,12 +529,17 @@ public class ComprehensiveStatisticalAnalysisServiceImpl {
if
(!((
JSONArray
)
v
).
contains
(
"all"
)
&&
((
JSONArray
)
v
).
size
()
>
0
)
{
String
field
=
k
;
if
(
k
.
equals
(
"regulatoryLabels"
)
||
k
.
equals
(
"equipCategory"
)
||
k
.
equals
(
"unitType"
))
{
((
JSONArray
)
v
).
forEach
(
item
->
boolMust
.
should
(
QueryBuilders
.
wildcardQuery
(
field
+
".keyword"
,
"*"
+
(
item
.
equals
(
"企业"
)
?
"使用单位"
:
item
)
+
"*"
)).
minimumShouldMatch
(
1
));
DynamicQueryBuilder
dynamicQueryBuilder
=
new
DynamicQueryBuilder
();
EnhancedDynamicQueryBuilder
enhancedDynamicQueryBuilder
=
new
EnhancedDynamicQueryBuilder
();
((
JSONArray
)
v
).
forEach
(
item
->
enhancedDynamicQueryBuilder
.
add
(
QueryBuilders
.
wildcardQuery
(
field
+
".keyword"
,
"*"
+
item
+
"*"
),
or
));
dynamicQueryBuilder
.
and
(
enhancedDynamicQueryBuilder
.
build
().
minimumShouldMatch
(
1
));
boolMust
.
must
(
dynamicQueryBuilder
.
build
());
}
else
if
(
k
.
equals
(
"industrySupervisor"
)
||
k
.
equals
(
"operatingStatus"
))
{
TermsQueryBuilder
termsQuery
=
QueryBuilders
.
termsQuery
(
field
+
".keyword"
,
((
JSONArray
)
v
)
.
get
(
0
)
);
TermsQueryBuilder
termsQuery
=
QueryBuilders
.
termsQuery
(
field
+
".keyword"
,
((
JSONArray
)
v
));
boolMust
.
must
(
termsQuery
);
}
else
if
(
k
.
equals
(
"itemCode"
)
||
k
.
equals
(
"subItemCode"
)
||
k
.
equals
(
"permitStatus"
))
{
String
path
=
"licenses"
;
EnhancedDynamicQueryBuilder
enhancedDynamicQueryBuilder
=
new
EnhancedDynamicQueryBuilder
();
((
JSONArray
)
v
).
forEach
(
item
->
{
String
nestedField
=
path
+
"."
+
(
k
.
equals
(
"permitStatus"
)
?
"expiryDate"
:
k
+
".keyword"
);
if
(
k
.
equals
(
"permitStatus"
))
{
...
...
@@ -531,7 +550,7 @@ public class ComprehensiveStatisticalAnalysisServiceImpl {
QueryBuilders
.
boolQuery
().
filter
(
QueryBuilders
.
rangeQuery
(
nestedField
).
lt
(
LocalDate
.
now
().
format
(
formatter
))),
ScoreMode
.
Avg
);
boolMust
.
must
(
nestedQuery
);
enhancedDynamicQueryBuilder
.
add
(
nestedQuery
,
or
);
}
else
if
(
item
.
equals
(
"near"
))
{
// 临期:小于等于当前日期加上30天
NestedQueryBuilder
nestedQuery
=
QueryBuilders
.
nestedQuery
(
...
...
@@ -539,7 +558,7 @@ public class ComprehensiveStatisticalAnalysisServiceImpl {
QueryBuilders
.
boolQuery
().
filter
(
QueryBuilders
.
rangeQuery
(
nestedField
).
lte
(
LocalDate
.
now
().
plusDays
(
30
).
format
(
formatter
)).
gte
(
LocalDate
.
now
().
format
(
formatter
))),
ScoreMode
.
Avg
);
boolMust
.
must
(
nestedQuery
);
enhancedDynamicQueryBuilder
.
add
(
nestedQuery
,
or
);
}
else
if
(
item
.
equals
(
"normal"
))
{
// 正常:大于当前日期加上30天
NestedQueryBuilder
nestedQuery
=
QueryBuilders
.
nestedQuery
(
...
...
@@ -547,7 +566,7 @@ public class ComprehensiveStatisticalAnalysisServiceImpl {
QueryBuilders
.
boolQuery
().
filter
(
QueryBuilders
.
rangeQuery
(
nestedField
).
gt
(
LocalDate
.
now
().
plusDays
(
30
).
format
(
formatter
))),
ScoreMode
.
Avg
);
boolMust
.
must
(
nestedQuery
);
enhancedDynamicQueryBuilder
.
add
(
nestedQuery
,
or
);
}
}
else
{
// 创建嵌套查询
...
...
@@ -556,9 +575,10 @@ public class ComprehensiveStatisticalAnalysisServiceImpl {
QueryBuilders
.
termsQuery
(
nestedField
,
item
),
ScoreMode
.
Avg
);
boolMust
.
must
(
nestedQuery
);
enhancedDynamicQueryBuilder
.
add
(
nestedQuery
,
or
);
}
});
boolMust
.
must
(
enhancedDynamicQueryBuilder
.
build
());
}
}
}
else
if
(
v
instanceof
String
)
{
...
...
@@ -576,7 +596,9 @@ public class ComprehensiveStatisticalAnalysisServiceImpl {
String
category
=
v
.
toString
();
JSONArray
unitTypeByType
=
UnitTypeNewEnum
.
getUnitTypeByType
(
category
);
List
<
String
>
list
=
unitTypeByType
.
stream
().
map
(
e
->
JSONObject
.
parseObject
(
JSONObject
.
toJSONString
(
e
)).
get
(
"value"
).
toString
()).
collect
(
Collectors
.
toList
());
list
.
forEach
(
item
->
boolMust
.
should
(
QueryBuilders
.
wildcardQuery
(
"unitType.keyword"
,
"*"
+
(
item
.
equals
(
"企业"
)
?
"使用单位"
:
item
)
+
"*"
)).
minimumShouldMatch
(
1
));
EnhancedDynamicQueryBuilder
enhancedDynamicQueryBuilder
=
new
EnhancedDynamicQueryBuilder
();
list
.
forEach
(
item
->
enhancedDynamicQueryBuilder
.
add
(
QueryBuilders
.
boolQuery
().
should
(
QueryBuilders
.
wildcardQuery
(
"unitType.keyword"
,
"*"
+
item
+
"*"
)),
or
));
boolMust
.
must
(
enhancedDynamicQueryBuilder
.
build
());
}
}
}
...
...
@@ -665,6 +687,16 @@ public class ComprehensiveStatisticalAnalysisServiceImpl {
return
result
;
}
private
void
deleteUnitCategory
(
JSONObject
filterParams
)
{
if
(
filterParams
.
containsKey
(
"unitType"
)
&&
!
filterParams
.
getString
(
"unitType"
).
contains
(
"all"
)
&&
!
filterParams
.
getString
(
"unitType"
).
contains
(
"[]"
))
{
filterParams
.
remove
(
"unitCategory"
);
}
if
(
filterParams
.
containsKey
(
"regulatoryLabels"
)
&&
!
filterParams
.
getString
(
"regulatoryLabels"
).
contains
(
"all"
)
&&
!
filterParams
.
getString
(
"regulatoryLabels"
).
contains
(
"[]"
))
{
filterParams
.
remove
(
"unitCategory"
);
}
}
private
JSONObject
queryEquipmentPage
(
JSONObject
filter
,
Page
<
JSONObject
>
page
,
Integer
current
,
Integer
size
)
{
JSONObject
result
=
new
JSONObject
();
...
...
@@ -748,7 +780,7 @@ public class ComprehensiveStatisticalAnalysisServiceImpl {
}
else
{
boolMust
.
filter
(
QueryBuilders
.
rangeQuery
(
field
).
gte
(
startDate
).
lte
(
endDate
));
}
}
else
if
(
k
.
equals
(
"EQU_LIST"
)
||
k
.
equals
(
"EQU_CATEGORY"
)
||
k
.
equals
(
"EQU_DEFINE"
)
||
k
.
equals
(
"
EQU_STATE"
)
||
k
.
equals
(
"
DATA_QUALITY_SCORE"
))
{
}
else
if
(
k
.
equals
(
"EQU_LIST"
)
||
k
.
equals
(
"EQU_CATEGORY"
)
||
k
.
equals
(
"EQU_DEFINE"
)
||
k
.
equals
(
"DATA_QUALITY_SCORE"
))
{
if
(
k
.
equals
(
"EQU_LIST"
))
{
field
=
"EQU_LIST_CODE"
;
}
else
if
(
k
.
equals
(
"EQU_CATEGORY"
))
{
...
...
@@ -758,6 +790,16 @@ public class ComprehensiveStatisticalAnalysisServiceImpl {
}
TermsQueryBuilder
termsQuery
=
QueryBuilders
.
termsQuery
(
field
,
(
JSONArray
)
v
);
boolMust
.
must
(
termsQuery
);
}
else
if
(
k
.
equals
(
"EQU_STATE"
))
{
EnhancedDynamicQueryBuilder
queryBuilder
=
new
EnhancedDynamicQueryBuilder
();
((
JSONArray
)
v
).
forEach
(
item
->
{
if
(!
item
.
equals
(
"99"
))
{
queryBuilder
.
add
(
QueryBuilders
.
matchQuery
(
k
,
item
.
toString
()),
or
);
}
else
{
queryBuilder
.
add
(
QueryBuilders
.
boolQuery
().
mustNot
(
QueryBuilders
.
existsQuery
(
k
)),
or
);
}
});
boolMust
.
must
(
queryBuilder
.
build
());
}
else
if
(
k
.
equals
(
"JDJY"
)
||
k
.
equals
(
"DQJY"
)
||
k
.
equals
(
"SCJY"
)
||
k
.
equals
(
"DTJY"
))
{
String
path
=
"inspections"
;
String
typeField
=
path
+
".inspectType"
;
...
...
@@ -881,7 +923,7 @@ public class ComprehensiveStatisticalAnalysisServiceImpl {
dto
.
put
(
"WHETHER_VEHICLE_CYLINDER"
,
ObjectUtils
.
isEmpty
(
dto
.
get
(
"WHETHER_VEHICLE_CYLINDER"
))
?
""
:
"1"
.
equals
(
dto
.
get
(
"WHETHER_VEHICLE_CYLINDER"
))
?
"是"
:
"否"
);
dto
.
put
(
"WHETHER_SKID_MOUNTED_PRESSURE_VESSEL"
,
ObjectUtils
.
isEmpty
(
dto
.
get
(
"WHETHER_SKID_MOUNTED_PRESSURE_VESSEL"
))
?
""
:
"1"
.
equals
(
dto
.
get
(
"WHETHER_SKID_MOUNTED_PRESSURE_VESSEL"
))
?
"是"
:
"否"
);
dto
.
put
(
"whetherSphericalTank"
,
ObjectUtils
.
isEmpty
(
dto
.
get
(
"whetherSphericalTank"
))
?
""
:
"1"
.
equals
(
dto
.
get
(
"whetherSphericalTank"
))
?
"是"
:
"否"
);
dto
.
put
(
"EQU_STATE"
,
ObjectUtils
.
isEmpty
(
dto
.
get
(
"EQU_STATE"
))
?
null
:
EquipStateEnum
.
getNameByCode
(
dto
.
get
(
"EQU_STATE"
).
toString
()));
dto
.
put
(
"EQU_STATE"
,
ObjectUtils
.
isEmpty
(
dto
.
get
(
"EQU_STATE"
))
?
"无状态"
:
EquipStateEnum
.
getNameByCode
(
dto
.
get
(
"EQU_STATE"
).
toString
()));
list
.
add
(
dto
);
}
totle
=
Objects
.
requireNonNull
(
response
.
getInternalResponse
().
hits
().
getTotalHits
()).
value
;
...
...
@@ -1266,11 +1308,11 @@ public class ComprehensiveStatisticalAnalysisServiceImpl {
private
void
personFieldHandle
(
String
field
,
String
itemCondition
,
Object
value
,
String
isOr
,
EnhancedDynamicQueryBuilder
builder
)
{
if
(
field
.
equals
(
"newPost"
)
||
field
.
equals
(
"subPost"
)
||
field
.
equals
(
"equipType"
))
{
if
(
itemCondition
.
equals
(
"eq"
))
{
builder
.
add
(
QueryBuilders
.
termQuery
(
field
+
".keyword"
,
value
),
isOr
);
builder
.
add
(
QueryBuilders
.
termQuery
(
field
,
value
),
isOr
);
}
else
if
(
itemCondition
.
equals
(
"in"
))
{
builder
.
add
(
QueryBuilders
.
wildcardQuery
(
field
+
".keyword"
,
"*"
+
value
+
"*"
),
isOr
);
builder
.
add
(
QueryBuilders
.
wildcardQuery
(
field
,
"*"
+
value
+
"*"
),
isOr
);
}
else
{
builder
.
add
(
QueryBuilders
.
boolQuery
().
mustNot
(
QueryBuilders
.
wildcardQuery
(
field
+
".keyword"
,
"*"
+
value
+
"*"
)),
isOr
);
builder
.
add
(
QueryBuilders
.
boolQuery
().
mustNot
(
QueryBuilders
.
wildcardQuery
(
field
,
"*"
+
value
+
"*"
)),
isOr
);
}
}
else
{
String
path
=
"licenses"
;
...
...
@@ -1284,19 +1326,23 @@ public class ComprehensiveStatisticalAnalysisServiceImpl {
);
// 无资质查询
BoolQueryBuilder
noCertQuery
=
QueryBuilders
.
boolQuery
()
.
should
(
QueryBuilders
.
wildcardQuery
(
"newPost.keyword"
,
"*66151*"
))
.
should
(
QueryBuilders
.
wildcardQuery
(
"newPost.keyword"
,
"*66152*"
))
.
should
(
QueryBuilders
.
wildcardQuery
(
"subPost.keyword"
,
"*6713*"
))
.
should
(
QueryBuilders
.
wildcardQuery
(
"subPost.keyword"
,
"*6764*"
))
.
should
(
QueryBuilders
.
wildcardQuery
(
"subPost.keyword"
,
"*6765*"
))
.
should
(
QueryBuilders
.
wildcardQuery
(
"newPost"
,
"*66151*"
))
.
should
(
QueryBuilders
.
wildcardQuery
(
"newPost"
,
"*66152*"
))
.
should
(
QueryBuilders
.
wildcardQuery
(
"newPost"
,
"*6552*"
))
.
should
(
QueryBuilders
.
wildcardQuery
(
"newPost"
,
"*6763*"
))
.
should
(
QueryBuilders
.
wildcardQuery
(
"subPost"
,
"*6713*"
))
.
should
(
QueryBuilders
.
wildcardQuery
(
"subPost"
,
"*6764*"
))
.
should
(
QueryBuilders
.
wildcardQuery
(
"subPost"
,
"*6765*"
))
.
minimumShouldMatch
(
1
);
// 无资质要求查询
BoolQueryBuilder
noCertRequestQuery
=
QueryBuilders
.
boolQuery
()
.
mustNot
(
QueryBuilders
.
wildcardQuery
(
"newPost.keyword"
,
"*66151*"
))
.
mustNot
(
QueryBuilders
.
wildcardQuery
(
"newPost.keyword"
,
"*66152*"
))
.
mustNot
(
QueryBuilders
.
wildcardQuery
(
"subPost.keyword"
,
"*6713*"
))
.
mustNot
(
QueryBuilders
.
wildcardQuery
(
"subPost.keyword"
,
"*6764*"
))
.
mustNot
(
QueryBuilders
.
wildcardQuery
(
"subPost.keyword"
,
"*6765*"
));
.
mustNot
(
QueryBuilders
.
wildcardQuery
(
"newPost"
,
"*66151*"
))
.
mustNot
(
QueryBuilders
.
wildcardQuery
(
"newPost"
,
"*66152*"
))
.
mustNot
(
QueryBuilders
.
wildcardQuery
(
"newPost"
,
"*6552*"
))
.
mustNot
(
QueryBuilders
.
wildcardQuery
(
"newPost"
,
"*6763*"
))
.
mustNot
(
QueryBuilders
.
wildcardQuery
(
"subPost"
,
"*6713*"
))
.
mustNot
(
QueryBuilders
.
wildcardQuery
(
"subPost"
,
"*6764*"
))
.
mustNot
(
QueryBuilders
.
wildcardQuery
(
"subPost"
,
"*6765*"
));
if
(
value
.
equals
(
"1"
))
{
if
(
itemCondition
.
equals
(
"eq"
)
||
itemCondition
.
equals
(
"in"
))
{
...
...
@@ -1306,7 +1352,10 @@ public class ComprehensiveStatisticalAnalysisServiceImpl {
}
}
else
if
(
value
.
equals
(
"0"
))
{
if
(
itemCondition
.
equals
(
"eq"
)
||
itemCondition
.
equals
(
"in"
))
{
builder
.
add
(
noCertQuery
,
isOr
);
EnhancedDynamicQueryBuilder
noLicensesQuery
=
new
EnhancedDynamicQueryBuilder
();
noLicensesQuery
.
add
(
QueryBuilders
.
boolQuery
().
mustNot
(
nestedQuery
),
and
);
noLicensesQuery
.
add
(
noCertQuery
,
and
);
builder
.
add
(
noLicensesQuery
.
build
(),
isOr
);
}
else
{
EnhancedDynamicQueryBuilder
builders
=
new
EnhancedDynamicQueryBuilder
();
builders
.
add
(
nestedQuery
,
and
);
...
...
@@ -1856,9 +1905,6 @@ public class ComprehensiveStatisticalAnalysisServiceImpl {
ArrayList
<
String
>
postDictCodeList
=
new
ArrayList
<>();
JsonNode
jsonNode
=
new
ObjectMapper
().
readTree
(
unitTypeLimitUserType
.
getInputStream
());
type
.
forEach
(
unitType
->
{
if
(
unitType
.
equals
(
"企业"
))
{
unitType
=
"使用单位"
;
}
JsonNode
companyTypeNode
=
jsonNode
.
get
(
unitType
.
toString
());
if
(
companyTypeNode
!=
null
&&
companyTypeNode
.
isObject
())
{
Iterator
<
Map
.
Entry
<
String
,
JsonNode
>>
fields
=
companyTypeNode
.
fields
();
...
...
@@ -1884,6 +1930,34 @@ public class ComprehensiveStatisticalAnalysisServiceImpl {
return
result
;
}
public
JSONArray
queryRYLX
(
String
type
)
{
JSONArray
result
=
new
JSONArray
();
if
(
ValidationUtil
.
isEmpty
(
type
))
{
List
<
String
>
typeList
=
new
ArrayList
<>(
Arrays
.
asList
(
"QYRYGW"
,
"QYRYGW-SYDW"
,
"QYRYGW-SCDW"
,
"QYRYGW-INSTALL"
,
"QYRYGW-INSPECTION"
));
result
=
deployDictionary
(
dataDictionaryService
.
lambdaQuery
()
.
select
(
DataDictionary:
:
getName
,
DataDictionary:
:
getCode
)
.
eq
(
DataDictionary:
:
getIsDelete
,
false
)
.
isNull
(
DataDictionary:
:
getParent
)
.
in
(
DataDictionary:
:
getType
,
typeList
)
.
list
());
}
else
{
List
<
DataDictionary
>
childrenrylx
=
dataDictionaryService
.
lambdaQuery
()
.
in
(
DataDictionary:
:
getParent
,
type
)
.
like
(
DataDictionary:
:
getType
,
"QYRYGW"
)
.
orderByAsc
(
DataDictionary:
:
getSortNum
)
.
list
();
;
result
=
deployDictionary
(
childrenrylx
);
}
return
result
;
}
/**
* 开始下载 发送消息
*/
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment