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
0b09f950
Commit
0b09f950
authored
Jul 11, 2025
by
tianyiming
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
修改bug
parent
c3838953
Show whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
163 additions
and
100 deletions
+163
-100
CompanyAdvanceSearchEnum.java
...module/statistics/api/enums/CompanyAdvanceSearchEnum.java
+1
-0
ComprehensiveStatisticalAnalysisController.java
...ontroller/ComprehensiveStatisticalAnalysisController.java
+11
-0
ComprehensiveStatisticalAnalysisServiceImpl.java
...ice/impl/ComprehensiveStatisticalAnalysisServiceImpl.java
+151
-100
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/CompanyAdvanceSearchEnum.java
View file @
0b09f950
...
...
@@ -23,6 +23,7 @@ public enum CompanyAdvanceSearchEnum {
SUB_ITEM_CODE
(
"许可子项目"
,
"subItemCode"
,
null
,
"/statistics/comprehensiveStatisticalAnalysis/select/queryXK?type={type}"
,
null
,
"itemCode"
),
OPERATING_STATUS
(
"经营状态"
,
"operatingStatus"
,
null
,
"/statistics/comprehensiveStatisticalAnalysis/select/queryDicDataNew?type={type}"
,
"jyzt"
,
null
),
EQUIP_CATEGORY
(
"设备类型"
,
"equipCategory"
,
null
,
"/statistics/comprehensiveStatisticalAnalysis/select/queryEquipList"
,
null
,
null
),
PERMIT_STATUS
(
"许可状态"
,
"permitStatus"
,
null
,
"/statistics/comprehensiveStatisticalAnalysis/select/permitStatus"
,
null
,
null
),
;
...
...
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 @
0b09f950
...
...
@@ -94,6 +94,17 @@ public class ComprehensiveStatisticalAnalysisController extends BaseController {
* @return
*/
@TycloudOperation
(
ApiLevel
=
UserType
.
AGENCY
)
@GetMapping
(
value
=
"/select/permitStatus"
)
@ApiOperation
(
httpMethod
=
"GET"
,
value
=
"查询许可状态"
,
notes
=
"查询许可状态"
)
public
ResponseModel
<
JSONArray
>
getPermitStatus
()
{
return
ResponseHelper
.
buildResponse
(
statisticalAnalysisService
.
getPermitStatus
());
}
/**
* @param
* @return
*/
@TycloudOperation
(
ApiLevel
=
UserType
.
AGENCY
)
@GetMapping
(
value
=
"/select/queryUnitType"
)
@ApiOperation
(
httpMethod
=
"GET"
,
value
=
"查询单位类型"
,
notes
=
"查询单位类型"
)
public
ResponseModel
<
JSONArray
>
queryUnitType
(
@RequestParam
(
required
=
false
)
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 @
0b09f950
...
...
@@ -292,7 +292,7 @@ public class ComprehensiveStatisticalAnalysisServiceImpl {
NestedQueryBuilder
nestedQuery
=
QueryBuilders
.
nestedQuery
(
path
,
existsQuery
(
nestedField
),
ScoreMode
.
Avg
ScoreMode
.
None
);
// 以下人员类型有资质要求
// 人员类型(newPost):检验人员:66151、检测人员:66152、作业人员:6552、检查人员:6763
...
...
@@ -331,7 +331,7 @@ public class ComprehensiveStatisticalAnalysisServiceImpl {
NestedQueryBuilder
nestedQuery
=
QueryBuilders
.
nestedQuery
(
path
,
QueryBuilders
.
boolQuery
().
filter
(
QueryBuilders
.
rangeQuery
(
nestedField
).
lt
(
LocalDate
.
now
().
format
(
formatter
))),
ScoreMode
.
Avg
ScoreMode
.
None
);
boolMust
.
must
(
nestedQuery
);
}
else
if
(
item
.
equals
(
"near"
))
{
...
...
@@ -339,7 +339,7 @@ public class ComprehensiveStatisticalAnalysisServiceImpl {
NestedQueryBuilder
nestedQuery
=
QueryBuilders
.
nestedQuery
(
path
,
QueryBuilders
.
boolQuery
().
filter
(
QueryBuilders
.
rangeQuery
(
nestedField
).
lte
(
LocalDate
.
now
().
plusDays
(
30
).
format
(
formatter
)).
gte
(
LocalDate
.
now
().
format
(
formatter
))),
ScoreMode
.
Avg
ScoreMode
.
None
);
boolMust
.
must
(
nestedQuery
);
}
else
if
(
item
.
equals
(
"normal"
))
{
...
...
@@ -347,7 +347,7 @@ public class ComprehensiveStatisticalAnalysisServiceImpl {
NestedQueryBuilder
nestedQuery
=
QueryBuilders
.
nestedQuery
(
path
,
QueryBuilders
.
boolQuery
().
filter
(
QueryBuilders
.
rangeQuery
(
nestedField
).
gt
(
LocalDate
.
now
().
plusDays
(
30
).
format
(
formatter
))),
ScoreMode
.
Avg
ScoreMode
.
None
);
boolMust
.
must
(
nestedQuery
);
}
...
...
@@ -355,14 +355,14 @@ public class ComprehensiveStatisticalAnalysisServiceImpl {
NestedQueryBuilder
nestedQuery
=
QueryBuilders
.
nestedQuery
(
path
,
QueryBuilders
.
boolQuery
().
must
(
QueryBuilders
.
termsQuery
(
nestedField
,
(
JSONArray
)
v
)),
ScoreMode
.
Avg
ScoreMode
.
None
);
boolMust
.
must
(
nestedQuery
);
}
else
{
NestedQueryBuilder
nestedQuery
=
QueryBuilders
.
nestedQuery
(
path
,
QueryBuilders
.
boolQuery
().
must
(
QueryBuilders
.
wildcardQuery
(
nestedField
,
"*"
+
item
+
"*"
)),
ScoreMode
.
Avg
ScoreMode
.
None
);
boolMust
.
should
(
nestedQuery
);
}
...
...
@@ -374,7 +374,7 @@ public class ComprehensiveStatisticalAnalysisServiceImpl {
NestedQueryBuilder
nestedQuery
=
QueryBuilders
.
nestedQuery
(
"licenses"
,
QueryBuilders
.
rangeQuery
(
"licenses."
+
k
).
gte
(
startDate
).
lte
(
endDate
),
ScoreMode
.
Avg
ScoreMode
.
None
);
boolMust
.
filter
(
nestedQuery
);
}
...
...
@@ -557,24 +557,31 @@ public class ComprehensiveStatisticalAnalysisServiceImpl {
// 超期:小于当前日期
NestedQueryBuilder
nestedQuery
=
QueryBuilders
.
nestedQuery
(
path
,
QueryBuilders
.
boolQuery
().
filter
(
QueryBuilders
.
rangeQuery
(
nestedField
).
lt
(
LocalDate
.
now
().
format
(
formatter
))),
ScoreMode
.
Avg
QueryBuilders
.
boolQuery
().
must
(
QueryBuilders
.
rangeQuery
(
nestedField
).
lt
(
LocalDate
.
now
().
format
(
formatter
))),
ScoreMode
.
None
);
enhancedDynamicQueryBuilder
.
add
(
nestedQuery
,
or
);
}
else
if
(
item
.
equals
(
"near"
))
{
// 临期:小于等于当前日期加上30天
NestedQueryBuilder
nestedQuery
=
QueryBuilders
.
nestedQuery
(
path
,
QueryBuilders
.
boolQuery
().
filter
(
QueryBuilders
.
rangeQuery
(
nestedField
).
lte
(
LocalDate
.
now
().
plusDays
(
30
).
format
(
formatter
)).
gte
(
LocalDate
.
now
().
format
(
formatter
))),
ScoreMode
.
Avg
QueryBuilders
.
boolQuery
().
must
(
QueryBuilders
.
rangeQuery
(
nestedField
).
lte
(
LocalDate
.
now
().
plusDays
(
30
).
format
(
formatter
)).
gte
(
LocalDate
.
now
().
format
(
formatter
))),
ScoreMode
.
None
);
enhancedDynamicQueryBuilder
.
add
(
nestedQuery
,
or
);
}
else
if
(
item
.
equals
(
"normal"
))
{
// 正常:大于当前日期加上30天
NestedQueryBuilder
nestedQuery
=
QueryBuilders
.
nestedQuery
(
path
,
QueryBuilders
.
boolQuery
().
filter
(
QueryBuilders
.
rangeQuery
(
nestedField
).
gt
(
LocalDate
.
now
().
plusDays
(
30
).
format
(
formatter
))),
ScoreMode
.
Avg
QueryBuilders
.
boolQuery
().
must
(
QueryBuilders
.
rangeQuery
(
nestedField
).
gt
(
LocalDate
.
now
().
plusDays
(
30
).
format
(
formatter
))),
ScoreMode
.
None
);
enhancedDynamicQueryBuilder
.
add
(
nestedQuery
,
or
);
}
else
if
(
item
.
equals
(
"none"
))
{
NestedQueryBuilder
nestedQuery
=
QueryBuilders
.
nestedQuery
(
path
,
QueryBuilders
.
boolQuery
().
mustNot
(
QueryBuilders
.
existsQuery
(
nestedField
)),
ScoreMode
.
None
);
enhancedDynamicQueryBuilder
.
add
(
nestedQuery
,
or
);
}
...
...
@@ -583,7 +590,7 @@ public class ComprehensiveStatisticalAnalysisServiceImpl {
NestedQueryBuilder
nestedQuery
=
QueryBuilders
.
nestedQuery
(
path
,
QueryBuilders
.
termsQuery
(
nestedField
,
item
),
ScoreMode
.
Avg
ScoreMode
.
None
);
enhancedDynamicQueryBuilder
.
add
(
nestedQuery
,
or
);
}
...
...
@@ -662,19 +669,31 @@ public class ComprehensiveStatisticalAnalysisServiceImpl {
}
else
{
permissionStatusList
.
add
(
"正常"
);
}
}
else
{
permissionStatusList
.
add
(
"无有效期"
);
}
}
long
cq
=
permissionStatusList
.
stream
().
filter
(
e
->
e
.
equals
(
"超期"
)).
count
();
long
lq
=
permissionStatusList
.
stream
().
filter
(
e
->
e
.
equals
(
"临期"
)).
count
();
long
zc
=
permissionStatusList
.
stream
().
filter
(
e
->
e
.
equals
(
"正常"
)).
count
();
long
no
=
permissionStatusList
.
stream
().
filter
(
e
->
e
.
equals
(
"无有效期"
)).
count
();
if
(
cq
>
0
)
{
permissionStatus
=
"超期"
;
permissionStatus
=
"
许可
超期"
;
}
else
if
(
lq
>
0
)
{
permissionStatus
=
"临期"
;
permissionStatus
=
"
许可
临期"
;
}
else
if
(
zc
>
0
)
{
permissionStatus
=
"正常"
;
permissionStatus
=
"许可正常"
;
}
else
if
(
no
>
0
)
{
permissionStatus
=
"无有效期"
;
}
}
}
else
if
(!
dto
.
containsKey
(
"licenses"
)
&&
(
dto
.
get
(
"unitType"
).
toString
().
contains
(
"检测单位"
)
||
dto
.
get
(
"unitType"
).
toString
().
contains
(
"检验单位"
)
||
dto
.
get
(
"unitType"
).
toString
().
contains
(
"制造单位"
)
||
dto
.
get
(
"unitType"
).
toString
().
contains
(
"充装单位"
)
||
dto
.
get
(
"unitType"
).
toString
().
contains
(
"设计单位"
)
||
dto
.
get
(
"unitType"
).
toString
().
contains
(
"安装改造维修单位"
)))
{
permissionStatus
=
"无有效期"
;
}
dto
.
put
(
"permissionStatus"
,
permissionStatus
);
list
.
add
(
dto
);
...
...
@@ -824,7 +843,7 @@ public class ComprehensiveStatisticalAnalysisServiceImpl {
NestedQueryBuilder
fieldQuery
=
QueryBuilders
.
nestedQuery
(
path
,
queryBuilder
,
ScoreMode
.
Avg
ScoreMode
.
None
);
JSONArray
dates
=
(
JSONArray
)
v
;
String
startDate
=
dates
.
getString
(
0
);
...
...
@@ -832,7 +851,7 @@ public class ComprehensiveStatisticalAnalysisServiceImpl {
NestedQueryBuilder
dateQuery
=
QueryBuilders
.
nestedQuery
(
path
,
QueryBuilders
.
rangeQuery
(
dateField
).
gte
(
startDate
).
lte
(
endDate
),
ScoreMode
.
Avg
ScoreMode
.
None
);
boolMust
.
must
(
fieldQuery
);
boolMust
.
filter
(
dateQuery
);
...
...
@@ -968,7 +987,7 @@ public class ComprehensiveStatisticalAnalysisServiceImpl {
List
<
Map
<
String
,
Object
>>
equipStatusMap
=
new
ArrayList
<>();
getEquipStatusStatic
(
boolMust
,
builder
,
equipStatusMap
);
result
.
put
(
"
inspectStatus"
,
equipStatusMap
);
result
.
put
(
"
keyIndicator"
,
equipStatusMap
);
if
(
ObjectUtils
.
isEmpty
(
filterParams
)
||
!
filterParams
.
containsKey
(
"EQU_LIST"
))
{
filterParams
=
new
JSONObject
();
...
...
@@ -1027,9 +1046,13 @@ public class ComprehensiveStatisticalAnalysisServiceImpl {
Map
<
String
,
Object
>
zyMap
=
new
HashMap
<>();
Map
<
String
,
Object
>
tyMap
=
new
HashMap
<>();
Map
<
String
,
Object
>
otherMap
=
new
HashMap
<>();
long
zy
=
staticsMap
.
get
(
EquipStateEnum
.
ZY
.
getCode
());
long
ty
=
staticsMap
.
get
(
EquipStateEnum
.
TY
.
getCode
());
long
other
=
staticsMap
.
get
(
"0"
)
+
staticsMap
.
get
(
EquipStateEnum
.
BF
.
getCode
())
+
staticsMap
.
get
(
EquipStateEnum
.
ZX
.
getCode
())
+
staticsMap
.
get
(
EquipStateEnum
.
WZT
.
getCode
());
long
zy
=
staticsMap
.
containsKey
(
EquipStateEnum
.
ZY
.
getCode
())
?
staticsMap
.
get
(
EquipStateEnum
.
ZY
.
getCode
())
:
0
;
long
ty
=
staticsMap
.
containsKey
(
EquipStateEnum
.
TY
.
getCode
())
?
staticsMap
.
get
(
EquipStateEnum
.
TY
.
getCode
())
:
0
;
long
bf
=
staticsMap
.
containsKey
(
EquipStateEnum
.
BF
.
getCode
())
?
staticsMap
.
get
(
EquipStateEnum
.
BF
.
getCode
())
:
0
;
long
zx
=
staticsMap
.
containsKey
(
EquipStateEnum
.
ZX
.
getCode
())
?
staticsMap
.
get
(
EquipStateEnum
.
ZX
.
getCode
())
:
0
;
long
wzt
=
staticsMap
.
containsKey
(
EquipStateEnum
.
WZT
.
getCode
())
?
staticsMap
.
get
(
EquipStateEnum
.
WZT
.
getCode
())
:
0
;
long
wdj
=
staticsMap
.
containsKey
(
"0"
)
?
staticsMap
.
get
(
"0"
)
:
0
;
long
other
=
wdj
+
bf
+
zx
+
wzt
;
zyMap
.
put
(
"name"
,
"在用"
);
zyMap
.
put
(
"value"
,
zy
);
tyMap
.
put
(
"name"
,
"停用"
);
...
...
@@ -1095,7 +1118,7 @@ public class ComprehensiveStatisticalAnalysisServiceImpl {
NestedQueryBuilder
eqQuery
=
QueryBuilders
.
nestedQuery
(
path
,
QueryBuilders
.
boolQuery
().
must
(
termsQueryBuilder
).
must
(
QueryBuilders
.
termsQuery
(
path
+
tail
,
value
)),
ScoreMode
.
Avg
ScoreMode
.
None
);
if
(
isCustom
)
{
builder
.
add
(
eqQuery
,
andOr
);
...
...
@@ -1107,7 +1130,7 @@ public class ComprehensiveStatisticalAnalysisServiceImpl {
NestedQueryBuilder
neqQuery
=
QueryBuilders
.
nestedQuery
(
path
,
QueryBuilders
.
boolQuery
().
must
(
termsQueryBuilder
).
mustNot
(
QueryBuilders
.
termsQuery
(
path
+
tail
,
value
)),
ScoreMode
.
Avg
ScoreMode
.
None
);
if
(
isCustom
)
{
builder
.
add
(
neqQuery
,
andOr
);
...
...
@@ -1119,7 +1142,7 @@ public class ComprehensiveStatisticalAnalysisServiceImpl {
NestedQueryBuilder
likeQuery
=
QueryBuilders
.
nestedQuery
(
path
,
QueryBuilders
.
boolQuery
().
must
(
termsQueryBuilder
).
must
(
QueryBuilders
.
wildcardQuery
(
path
+
tail
,
"*"
+
value
+
"*"
)),
ScoreMode
.
Avg
ScoreMode
.
None
);
if
(
isCustom
)
{
builder
.
add
(
likeQuery
,
andOr
);
...
...
@@ -1131,7 +1154,7 @@ public class ComprehensiveStatisticalAnalysisServiceImpl {
NestedQueryBuilder
notLikeQuery
=
QueryBuilders
.
nestedQuery
(
path
,
QueryBuilders
.
boolQuery
().
must
(
termsQueryBuilder
).
must
(
QueryBuilders
.
wildcardQuery
(
path
+
tail
,
"*"
+
value
+
"*"
)),
ScoreMode
.
Avg
ScoreMode
.
None
);
if
(
isCustom
)
{
builder
.
add
(
QueryBuilders
.
boolQuery
().
mustNot
(
notLikeQuery
),
andOr
);
...
...
@@ -1143,7 +1166,7 @@ public class ComprehensiveStatisticalAnalysisServiceImpl {
NestedQueryBuilder
gtQuery
=
QueryBuilders
.
nestedQuery
(
path
,
QueryBuilders
.
boolQuery
().
must
(
termsQueryBuilder
).
filter
(
QueryBuilders
.
rangeQuery
(
path
+
tail
).
gt
(
value
.
toString
())),
ScoreMode
.
Avg
ScoreMode
.
None
);
if
(
isCustom
)
{
builder
.
add
(
gtQuery
,
andOr
);
...
...
@@ -1155,7 +1178,7 @@ public class ComprehensiveStatisticalAnalysisServiceImpl {
NestedQueryBuilder
gteQuery
=
QueryBuilders
.
nestedQuery
(
path
,
QueryBuilders
.
boolQuery
().
must
(
termsQueryBuilder
).
must
(
QueryBuilders
.
rangeQuery
(
path
+
tail
).
gte
(
value
.
toString
())),
ScoreMode
.
Avg
ScoreMode
.
None
);
if
(
isCustom
)
{
builder
.
add
(
gteQuery
,
andOr
);
...
...
@@ -1167,7 +1190,7 @@ public class ComprehensiveStatisticalAnalysisServiceImpl {
NestedQueryBuilder
ltQuery
=
QueryBuilders
.
nestedQuery
(
path
,
QueryBuilders
.
boolQuery
().
must
(
termsQueryBuilder
).
must
(
QueryBuilders
.
rangeQuery
(
path
+
tail
).
lt
(
value
.
toString
())),
ScoreMode
.
Avg
ScoreMode
.
None
);
if
(
isCustom
)
{
builder
.
add
(
ltQuery
,
andOr
);
...
...
@@ -1179,7 +1202,7 @@ public class ComprehensiveStatisticalAnalysisServiceImpl {
NestedQueryBuilder
lteQuery
=
QueryBuilders
.
nestedQuery
(
path
,
QueryBuilders
.
boolQuery
().
must
(
termsQueryBuilder
).
must
(
QueryBuilders
.
rangeQuery
(
path
+
tail
).
lte
(
value
.
toString
())),
ScoreMode
.
Avg
ScoreMode
.
None
);
if
(
isCustom
)
{
builder
.
add
(
lteQuery
,
andOr
);
...
...
@@ -1192,7 +1215,7 @@ public class ComprehensiveStatisticalAnalysisServiceImpl {
NestedQueryBuilder
betweenQuery
=
QueryBuilders
.
nestedQuery
(
path
,
QueryBuilders
.
boolQuery
().
must
(
termsQueryBuilder
).
must
(
QueryBuilders
.
rangeQuery
(
path
+
tail
).
gte
(
Double
.
parseDouble
(
btValues
.
get
(
0
).
toString
())).
lte
(
Double
.
parseDouble
(
btValues
.
get
(
1
).
toString
()))),
ScoreMode
.
Avg
ScoreMode
.
None
);
if
(
isCustom
)
{
builder
.
add
(
betweenQuery
,
andOr
);
...
...
@@ -1205,7 +1228,7 @@ public class ComprehensiveStatisticalAnalysisServiceImpl {
NestedQueryBuilder
inQuery
=
QueryBuilders
.
nestedQuery
(
path
,
QueryBuilders
.
boolQuery
().
must
(
termsQueryBuilder
).
must
(
QueryBuilders
.
termsQuery
(
path
+
tail
,
inValues
)),
ScoreMode
.
Avg
ScoreMode
.
None
);
if
(
isCustom
)
{
builder
.
add
(
inQuery
,
andOr
);
...
...
@@ -1218,7 +1241,7 @@ public class ComprehensiveStatisticalAnalysisServiceImpl {
NestedQueryBuilder
notInQuery
=
QueryBuilders
.
nestedQuery
(
path
,
QueryBuilders
.
boolQuery
().
must
(
termsQueryBuilder
).
must
(
QueryBuilders
.
termsQuery
(
path
+
tail
,
notInValues
)),
ScoreMode
.
Avg
ScoreMode
.
None
);
if
(
isCustom
)
{
builder
.
add
(
QueryBuilders
.
boolQuery
().
mustNot
(
notInQuery
),
andOr
);
...
...
@@ -1388,7 +1411,7 @@ public class ComprehensiveStatisticalAnalysisServiceImpl {
NestedQueryBuilder
nestedQuery
=
QueryBuilders
.
nestedQuery
(
path
,
existsQuery
(
nestedField
),
ScoreMode
.
Avg
ScoreMode
.
None
);
// 无资质查询
BoolQueryBuilder
noCertQuery
=
QueryBuilders
.
boolQuery
()
...
...
@@ -1444,14 +1467,14 @@ public class ComprehensiveStatisticalAnalysisServiceImpl {
NestedQueryBuilder
nestedQuery
=
QueryBuilders
.
nestedQuery
(
path
,
QueryBuilders
.
boolQuery
().
filter
(
QueryBuilders
.
rangeQuery
(
nestedField
).
lt
(
LocalDate
.
now
().
format
(
formatter
))),
ScoreMode
.
Avg
ScoreMode
.
None
);
builder
.
add
(
nestedQuery
,
isOr
);
}
else
{
NestedQueryBuilder
nestedQuery
=
QueryBuilders
.
nestedQuery
(
path
,
QueryBuilders
.
boolQuery
().
filter
(
QueryBuilders
.
rangeQuery
(
nestedField
).
gte
(
LocalDate
.
now
().
format
(
formatter
))),
ScoreMode
.
Avg
ScoreMode
.
None
);
builder
.
add
(
nestedQuery
,
isOr
);
}
...
...
@@ -1460,19 +1483,19 @@ public class ComprehensiveStatisticalAnalysisServiceImpl {
NestedQueryBuilder
nestedQuery
=
QueryBuilders
.
nestedQuery
(
path
,
QueryBuilders
.
boolQuery
().
filter
(
QueryBuilders
.
rangeQuery
(
nestedField
).
lte
(
LocalDate
.
now
().
plusDays
(
30
).
format
(
formatter
)).
gte
(
LocalDate
.
now
().
format
(
formatter
))),
ScoreMode
.
Avg
ScoreMode
.
None
);
builder
.
add
(
nestedQuery
,
isOr
);
}
else
{
NestedQueryBuilder
overdueNestedQuery
=
QueryBuilders
.
nestedQuery
(
path
,
QueryBuilders
.
boolQuery
().
filter
(
QueryBuilders
.
rangeQuery
(
nestedField
).
lt
(
LocalDate
.
now
().
format
(
formatter
))),
ScoreMode
.
Avg
ScoreMode
.
None
);
NestedQueryBuilder
normalNestedQuery
=
QueryBuilders
.
nestedQuery
(
path
,
QueryBuilders
.
boolQuery
().
filter
(
QueryBuilders
.
rangeQuery
(
nestedField
).
gt
(
LocalDate
.
now
().
plusDays
(
30
).
format
(
formatter
))),
ScoreMode
.
Avg
ScoreMode
.
None
);
builder
.
add
(
overdueNestedQuery
,
or
);
builder
.
add
(
normalNestedQuery
,
or
);
...
...
@@ -1482,19 +1505,19 @@ public class ComprehensiveStatisticalAnalysisServiceImpl {
NestedQueryBuilder
nestedQuery
=
QueryBuilders
.
nestedQuery
(
path
,
QueryBuilders
.
boolQuery
().
filter
(
QueryBuilders
.
rangeQuery
(
nestedField
).
gt
(
LocalDate
.
now
().
plusDays
(
30
).
format
(
formatter
))),
ScoreMode
.
Avg
ScoreMode
.
None
);
builder
.
add
(
nestedQuery
,
isOr
);
}
else
{
NestedQueryBuilder
elseNestedQuery
=
QueryBuilders
.
nestedQuery
(
path
,
QueryBuilders
.
boolQuery
().
filter
(
QueryBuilders
.
rangeQuery
(
nestedField
).
lte
(
LocalDate
.
now
().
plusDays
(
30
).
format
(
formatter
))),
ScoreMode
.
Avg
ScoreMode
.
None
);
NestedQueryBuilder
noLicensesNestedQuery
=
QueryBuilders
.
nestedQuery
(
path
,
existsQuery
(
nestedField
),
ScoreMode
.
Avg
ScoreMode
.
None
);
builder
.
add
(
elseNestedQuery
,
or
);
}
...
...
@@ -1503,13 +1526,13 @@ public class ComprehensiveStatisticalAnalysisServiceImpl {
NestedQueryBuilder
nestedQuery
=
QueryBuilders
.
nestedQuery
(
path
,
QueryBuilders
.
wildcardQuery
(
nestedField
,
"*"
+
value
+
"*"
),
ScoreMode
.
Avg
ScoreMode
.
None
);
if
(
itemCondition
.
equals
(
"eq"
))
{
NestedQueryBuilder
eqNestedQuery
=
QueryBuilders
.
nestedQuery
(
path
,
QueryBuilders
.
termQuery
(
nestedField
,
value
),
ScoreMode
.
Avg
ScoreMode
.
None
);
builder
.
add
(
eqNestedQuery
,
isOr
);
}
else
if
(
itemCondition
.
equals
(
"in"
))
{
...
...
@@ -1526,60 +1549,79 @@ public class ComprehensiveStatisticalAnalysisServiceImpl {
String
path
=
"licenses"
;
String
nestedField
=
path
+
"."
+
(
field
.
equals
(
"permitStatus"
)
?
"expiryDate"
:
field
+
".keyword"
);
if
(
field
.
equals
(
"permitStatus"
))
{
if
(
value
.
equals
(
"overdue"
))
{
if
(
itemCondition
.
equals
(
"eq"
)
||
itemCondition
.
equals
(
"in"
))
{
NestedQueryBuilder
nestedQuery
=
QueryBuilders
.
nestedQuery
(
// 无许可到期日期
NestedQueryBuilder
noneQuery
=
QueryBuilders
.
nestedQuery
(
path
,
QueryBuilders
.
boolQuery
().
filter
(
QueryBuilders
.
rangeQuery
(
nestedField
).
lt
(
LocalDate
.
now
().
format
(
formatter
)
)),
ScoreMode
.
Avg
QueryBuilders
.
boolQuery
().
mustNot
(
QueryBuilders
.
existsQuery
(
nestedField
)),
ScoreMode
.
None
);
builder
.
add
(
QueryBuilders
.
boolQuery
().
must
(
nestedQuery
),
isOr
);
}
else
{
NestedQueryBuilder
nestedQuery
=
QueryBuilders
.
nestedQuery
(
// 有效许可到期日期
NestedQueryBuilder
existsQuery
=
QueryBuilders
.
nestedQuery
(
path
,
QueryBuilders
.
boolQuery
().
filter
(
QueryBuilders
.
rangeQuery
(
nestedField
).
gte
(
LocalDate
.
now
().
format
(
formatter
)
)),
ScoreMode
.
Avg
QueryBuilders
.
boolQuery
().
must
(
QueryBuilders
.
existsQuery
(
nestedField
)),
ScoreMode
.
None
);
builder
.
add
(
QueryBuilders
.
boolQuery
().
must
(
nestedQuery
),
isOr
);
}
}
else
if
(
value
.
equals
(
"near"
))
{
if
(
itemCondition
.
equals
(
"eq"
)
||
itemCondition
.
equals
(
"in"
))
{
NestedQueryBuilder
nestedQuery
=
QueryBuilders
.
nestedQuery
(
// 正常许可到期日期
NestedQueryBuilder
normalNestedQuery
=
QueryBuilders
.
nestedQuery
(
path
,
QueryBuilders
.
boolQuery
().
filter
(
QueryBuilders
.
rangeQuery
(
nestedField
).
lte
(
LocalDate
.
now
().
plusDays
(
30
).
format
(
formatter
)).
gte
(
LocalDate
.
now
(
).
format
(
formatter
))),
ScoreMode
.
Avg
QueryBuilders
.
boolQuery
().
filter
(
QueryBuilders
.
rangeQuery
(
nestedField
).
gt
(
LocalDate
.
now
().
plusDays
(
30
).
format
(
formatter
))),
ScoreMode
.
None
);
builder
.
add
(
QueryBuilders
.
boolQuery
().
must
(
nestedQuery
),
isOr
);
}
else
{
// 超期许可到期日期
NestedQueryBuilder
overdueNestedQuery
=
QueryBuilders
.
nestedQuery
(
path
,
QueryBuilders
.
boolQuery
().
filter
(
QueryBuilders
.
rangeQuery
(
nestedField
).
lt
(
LocalDate
.
now
().
format
(
formatter
))),
ScoreMode
.
Avg
ScoreMode
.
None
);
builder
.
add
(
QueryBuilders
.
boolQuery
().
must
(
overdueNestedQuery
),
or
);
NestedQueryBuilder
normal
NestedQuery
=
QueryBuilders
.
nestedQuery
(
// 临期许可到期日期
NestedQueryBuilder
near
NestedQuery
=
QueryBuilders
.
nestedQuery
(
path
,
QueryBuilders
.
boolQuery
().
filter
(
QueryBuilders
.
rangeQuery
(
nestedField
).
gt
(
LocalDate
.
now
().
plusDays
(
30
).
format
(
formatter
))),
ScoreMode
.
Avg
QueryBuilders
.
boolQuery
().
filter
(
QueryBuilders
.
rangeQuery
(
nestedField
).
lte
(
LocalDate
.
now
().
plusDays
(
30
).
format
(
formatter
)).
gte
(
LocalDate
.
now
(
).
format
(
formatter
))),
ScoreMode
.
None
);
builder
.
add
(
QueryBuilders
.
boolQuery
().
must
(
normalNestedQuery
),
or
);
}
}
else
if
(
value
.
equals
(
"normal"
))
{
if
(
value
.
equals
(
"overdue"
))
{
if
(
itemCondition
.
equals
(
"eq"
)
||
itemCondition
.
equals
(
"in"
))
{
builder
.
add
(
QueryBuilders
.
boolQuery
().
must
(
overdueNestedQuery
),
isOr
);
}
else
{
EnhancedDynamicQueryBuilder
builders
=
new
EnhancedDynamicQueryBuilder
();
NestedQueryBuilder
nestedQuery
=
QueryBuilders
.
nestedQuery
(
path
,
QueryBuilders
.
boolQuery
().
filter
(
QueryBuilders
.
rangeQuery
(
nestedField
).
gt
(
LocalDate
.
now
().
plusDays
(
30
).
format
(
formatter
))),
ScoreMode
.
Avg
QueryBuilders
.
boolQuery
().
filter
(
QueryBuilders
.
rangeQuery
(
nestedField
).
gt
e
(
LocalDate
.
now
(
).
format
(
formatter
))),
ScoreMode
.
None
);
builder
.
add
(
QueryBuilders
.
boolQuery
().
must
(
nestedQuery
),
isOr
);
builders
.
add
(
QueryBuilders
.
boolQuery
().
must
(
nestedQuery
),
or
);
builders
.
add
(
QueryBuilders
.
boolQuery
().
must
(
noneQuery
),
or
);
builder
.
add
(
builders
.
build
(),
isOr
);
}
}
else
if
(
value
.
equals
(
"near"
))
{
if
(
itemCondition
.
equals
(
"eq"
)
||
itemCondition
.
equals
(
"in"
))
{
builder
.
add
(
QueryBuilders
.
boolQuery
().
must
(
nearNestedQuery
),
isOr
);
}
else
{
EnhancedDynamicQueryBuilder
builders
=
new
EnhancedDynamicQueryBuilder
();
builders
.
add
(
QueryBuilders
.
boolQuery
().
must
(
overdueNestedQuery
),
or
);
builders
.
add
(
QueryBuilders
.
boolQuery
().
must
(
normalNestedQuery
),
or
);
builders
.
add
(
QueryBuilders
.
boolQuery
().
must
(
noneQuery
),
or
);
builder
.
add
(
builders
.
build
(),
isOr
);
}
}
else
if
(
value
.
equals
(
"normal"
))
{
if
(
itemCondition
.
equals
(
"eq"
)
||
itemCondition
.
equals
(
"in"
))
{
builder
.
add
(
normalNestedQuery
,
isOr
);
}
else
{
EnhancedDynamicQueryBuilder
builders
=
new
EnhancedDynamicQueryBuilder
();
NestedQueryBuilder
nestedQuery
=
QueryBuilders
.
nestedQuery
(
path
,
QueryBuilders
.
boolQuery
().
filter
(
QueryBuilders
.
rangeQuery
(
nestedField
).
lte
(
LocalDate
.
now
().
plusDays
(
30
).
format
(
formatter
))),
ScoreMode
.
Avg
ScoreMode
.
None
);
builder
.
add
(
QueryBuilders
.
boolQuery
().
must
(
nestedQuery
),
isOr
);
builders
.
add
(
QueryBuilders
.
boolQuery
().
must
(
nestedQuery
),
or
);
builders
.
add
(
QueryBuilders
.
boolQuery
().
must
(
noneQuery
),
or
);
builder
.
add
(
builders
.
build
(),
isOr
);
}
}
else
if
(
value
.
equals
(
"none"
))
{
if
(
itemCondition
.
equals
(
"eq"
)
||
itemCondition
.
equals
(
"in"
))
{
builder
.
add
(
QueryBuilders
.
boolQuery
().
must
(
existsQuery
),
or
);
}
else
{
builder
.
add
(
QueryBuilders
.
boolQuery
().
must
(
noneQuery
),
or
);
}
}
}
else
{
...
...
@@ -1588,14 +1630,14 @@ public class ComprehensiveStatisticalAnalysisServiceImpl {
NestedQueryBuilder
nestedQuery
=
QueryBuilders
.
nestedQuery
(
path
,
QueryBuilders
.
termsQuery
(
nestedField
,
value
),
ScoreMode
.
Avg
ScoreMode
.
None
);
builder
.
add
(
QueryBuilders
.
boolQuery
().
must
(
nestedQuery
),
isOr
);
}
else
{
NestedQueryBuilder
nestedQuery
=
QueryBuilders
.
nestedQuery
(
path
,
QueryBuilders
.
termsQuery
(
nestedField
,
value
),
ScoreMode
.
Avg
ScoreMode
.
None
);
builder
.
add
(
QueryBuilders
.
boolQuery
().
mustNot
(
nestedQuery
),
isOr
);
}
...
...
@@ -1681,7 +1723,7 @@ public class ComprehensiveStatisticalAnalysisServiceImpl {
NestedQueryBuilder
fieldQuery
=
QueryBuilders
.
nestedQuery
(
path
,
queryBuilder
,
ScoreMode
.
Avg
ScoreMode
.
None
);
builder
.
add
(
fieldQuery
,
and
);
BoolQueryBuilder
query
=
QueryBuilders
.
boolQuery
();
...
...
@@ -1702,7 +1744,7 @@ public class ComprehensiveStatisticalAnalysisServiceImpl {
NestedQueryBuilder
dateQuery
=
QueryBuilders
.
nestedQuery
(
path
,
query
,
ScoreMode
.
Avg
ScoreMode
.
None
);
builder
.
add
(
dateQuery
,
isOr
);
}
else
if
(
field
.
equals
(
"QZ_OR_TANK"
))
{
...
...
@@ -1757,34 +1799,43 @@ public class ComprehensiveStatisticalAnalysisServiceImpl {
result
.
put
(
"operatingStatus"
,
deployDictionaryNew
(
dataDictionaryService
.
getByType
(
"jyzt"
)));
//许可状态
JSONArray
permitStatusData
=
new
JSONArray
();
for
(
int
i
=
0
;
i
<
3
;
i
++)
{
result
.
put
(
"permitStatus"
,
getPermitStatus
());
//监管设备类型
Map
<
String
,
List
<
Map
<
String
,
Object
>>>
resourceJson
=
JsonUtils
.
getResourceJson
(
equipCategory
);
List
<
Map
<
String
,
Object
>>
equipCategory
=
resourceJson
.
get
(
EquipmentClassifityEnum
.
ZHTJFX
.
getCode
());
result
.
put
(
"equipCategory"
,
equipCategory
);
return
result
;
}
public
JSONArray
getPermitStatus
()
{
JSONArray
permitStatus
=
new
JSONArray
();
for
(
int
i
=
0
;
i
<
4
;
i
++)
{
JSONObject
object
=
new
JSONObject
();
if
(
0
==
i
)
{
object
.
put
(
"key"
,
"
overdue
"
);
object
.
put
(
"value"
,
"
overdue
"
);
object
.
put
(
"label"
,
"
超期
"
);
object
.
put
(
"key"
,
"
normal
"
);
object
.
put
(
"value"
,
"
normal
"
);
object
.
put
(
"label"
,
"
许可正常
"
);
}
else
if
(
1
==
i
)
{
object
.
put
(
"key"
,
"near"
);
object
.
put
(
"value"
,
"near"
);
object
.
put
(
"label"
,
"临期"
);
object
.
put
(
"label"
,
"许可临期"
);
}
else
if
(
2
==
i
)
{
object
.
put
(
"key"
,
"overdue"
);
object
.
put
(
"value"
,
"overdue"
);
object
.
put
(
"label"
,
"许可超期"
);
}
else
{
object
.
put
(
"key"
,
"no
rmal
"
);
object
.
put
(
"value"
,
"no
rmal
"
);
object
.
put
(
"label"
,
"
正常
"
);
object
.
put
(
"key"
,
"no
ne
"
);
object
.
put
(
"value"
,
"no
ne
"
);
object
.
put
(
"label"
,
"
无有效期
"
);
}
permitStatus
Data
.
add
(
object
);
permitStatus
.
add
(
object
);
}
result
.
put
(
"permitStatus"
,
permitStatusData
);
//监管设备类型
Map
<
String
,
List
<
Map
<
String
,
Object
>>>
resourceJson
=
JsonUtils
.
getResourceJson
(
equipCategory
);
List
<
Map
<
String
,
Object
>>
equipCategory
=
resourceJson
.
get
(
EquipmentClassifityEnum
.
ZHTJFX
.
getCode
());
result
.
put
(
"equipCategory"
,
equipCategory
);
return
result
;
return
permitStatus
;
}
private
static
JSONArray
getUnitCategory
()
{
JSONArray
unitCategory
=
new
JSONArray
();
for
(
int
i
=
0
;
i
<
3
;
i
++)
{
...
...
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