Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
A
amos-boot-zx-biz
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
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
Jobs
Commits
Open sidebar
项目统一框架
一体化_户用光伏项目代码
amos-boot-zx-biz
Commits
9060a6a9
Commit
9060a6a9
authored
Jul 25, 2024
by
yangyang
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
智慧分析 - 健康等级
parent
11a40a1d
Hide whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
194 additions
and
67 deletions
+194
-67
IFanHealthIndexService.java
...boot/module/jxiop/biz/service/IFanHealthIndexService.java
+2
-0
IPvHealthIndexService.java
.../boot/module/jxiop/biz/service/IPvHealthIndexService.java
+4
-0
FanHealthIndexServiceImpl.java
...ule/jxiop/biz/service/impl/FanHealthIndexServiceImpl.java
+46
-0
PvHealthIndexServiceImpl.java
...dule/jxiop/biz/service/impl/PvHealthIndexServiceImpl.java
+47
-5
TdengineTimeServiceImpl.java
...odule/jxiop/biz/service/impl/TdengineTimeServiceImpl.java
+95
-62
No files found.
amos-boot-system-jxiop/amos-boot-module-jxiop-analyse-biz/src/main/java/com/yeejoin/amos/boot/module/jxiop/biz/service/IFanHealthIndexService.java
View file @
9060a6a9
...
@@ -16,6 +16,8 @@ import java.util.List;
...
@@ -16,6 +16,8 @@ import java.util.List;
*/
*/
public
interface
IFanHealthIndexService
{
public
interface
IFanHealthIndexService
{
List
<
FanHealthIndex
>
getInfoListByGroupByCdFan
(
String
startTime
,
String
tableName
,
String
analysisObjectType
);
List
<
FanHealthIndex
>
getInfoListByGroupByZxtFan
(
String
startTime
,
String
tableName
,
String
analysisObjectType
);
List
<
FanHealthIndex
>
getInfoListByGroupByZxtFan
(
String
startTime
,
String
tableName
,
String
analysisObjectType
);
/**
/**
...
...
amos-boot-system-jxiop/amos-boot-module-jxiop-analyse-biz/src/main/java/com/yeejoin/amos/boot/module/jxiop/biz/service/IPvHealthIndexService.java
View file @
9060a6a9
...
@@ -17,6 +17,10 @@ import java.util.List;
...
@@ -17,6 +17,10 @@ import java.util.List;
*/
*/
public
interface
IPvHealthIndexService
{
public
interface
IPvHealthIndexService
{
List
<
PvHealthIndex
>
getInfoListByGroupByCdPv
(
String
startTime
,
String
tableName
,
String
analysisObjectType
);
/**
/**
* 设备加权平均
* 设备加权平均
...
...
amos-boot-system-jxiop/amos-boot-module-jxiop-analyse-biz/src/main/java/com/yeejoin/amos/boot/module/jxiop/biz/service/impl/FanHealthIndexServiceImpl.java
View file @
9060a6a9
...
@@ -36,6 +36,52 @@ public class FanHealthIndexServiceImpl implements IFanHealthIndexService {
...
@@ -36,6 +36,52 @@ public class FanHealthIndexServiceImpl implements IFanHealthIndexService {
@Autowired
@Autowired
private
IdxBizFanWeightMapper
idxBizFanWeightMapper
;
private
IdxBizFanWeightMapper
idxBizFanWeightMapper
;
@Override
public
List
<
FanHealthIndex
>
getInfoListByGroupByCdFan
(
String
startTime
,
String
tableName
,
String
analysisObjectType
)
{
List
<
FanHealthIndex
>
fanHealthIndicesZxt
=
fanHealthIndexMapper
.
getInfoList
(
startTime
,
tableName
,
analysisObjectType
);
QueryWrapper
<
IdxBizFanWeight
>
idxBizFanWeightQueryWrapper
=
new
QueryWrapper
<>();
idxBizFanWeightQueryWrapper
.
eq
(
"type"
,
"5"
);
idxBizFanWeightQueryWrapper
.
isNotNull
(
"value"
);
List
<
IdxBizFanWeight
>
idxBizFanWeights
=
idxBizFanWeightMapper
.
selectList
(
idxBizFanWeightQueryWrapper
);
Map
<
String
,
Float
>
weightMap
=
idxBizFanWeights
.
stream
().
collect
(
Collectors
.
toMap
(
o
->
o
.
getArae
()
+
o
.
getStation
()
+
o
.
getEquipmentName
()
+
o
.
getSubarray
()
+
o
.
getPointName
(),
IdxBizFanWeight:
:
getValue
));
// 开始计算加权平均
Map
<
String
,
List
<
FanHealthIndex
>>
fanHealthIndicesZxtMap
=
fanHealthIndicesZxt
.
stream
().
collect
(
Collectors
.
groupingBy
(
o
->
o
.
getGatewayId
()
+
o
.
getStation
()
+
o
.
getAnalysisObjType
()
+
o
.
getArea
()
+
o
.
getSubSystem
()
+
o
.
getEquipmentName
()
+
o
.
getNumber
()
+
o
.
getOrgCode
()));
List
<
FanHealthIndex
>
fanHealthIndicesZxtNews
=
new
ArrayList
<>();
fanHealthIndicesZxtMap
.
forEach
((
k
,
v
)
->
{
FanHealthIndex
fanHealthIndex
=
new
FanHealthIndex
();
fanHealthIndex
.
setIndexAddress
(
v
.
get
(
0
).
getIndexAddress
());
fanHealthIndex
.
setGatewayId
(
v
.
get
(
0
).
getGatewayId
());
fanHealthIndex
.
setStation
(
v
.
get
(
0
).
getStation
());
fanHealthIndex
.
setAnalysisObjType
(
"测点"
);
fanHealthIndex
.
setAnalysisObjSeq
(
v
.
get
(
0
).
getAnalysisObjSeq
());
fanHealthIndex
.
setWeight
(
v
.
get
(
0
).
getWeight
());
fanHealthIndex
.
setArea
(
v
.
get
(
0
).
getArea
());
fanHealthIndex
.
setSubSystem
(
v
.
get
(
0
).
getSubSystem
());
fanHealthIndex
.
setNumber
(
v
.
get
(
0
).
getNumber
());
fanHealthIndex
.
setEquipmentName
(
v
.
get
(
0
).
getEquipmentName
());
fanHealthIndex
.
setPointName
(
v
.
get
(
0
).
getPointName
());
fanHealthIndex
.
setKks
(
v
.
get
(
0
).
getNumber
());
fanHealthIndex
.
setOrgCode
(
v
.
get
(
0
).
getOrgCode
());
// 例如 子系统 = (测点1 * 测点1权重 + 测点2 * 测点2权重 + .... 测点n权重) / (测点1权重 + 测点2权重 + .... 测点n权重)
// 但是测点是没有权重的,所以子系统无法计算加权平均
// 设备 = (子系统1 * 子系统1权重 + 子系统2 * 子系统2权重 + .... 子系统n权重) / (子系统1权重 + 子系统2权重 + .... 子系统n权重)
// 但如果没有配置子系统的权重,如何计算?
try
{
// 加权平均
Double
totalHealthIndex
=
v
.
stream
().
mapToDouble
(
o
->
getWeight
(()
->
o
.
getArea
()
+
o
.
getStation
()
+
o
.
getEquipmentName
()
+
o
.
getSubSystem
()
+
o
.
getPointName
(),
weightMap
)
*
o
.
getHealthIndex
()).
sum
();
Double
totalAnomaly
=
v
.
stream
().
mapToDouble
(
o
->
getWeight
(()
->
o
.
getArea
()
+
o
.
getStation
()
+
o
.
getEquipmentName
()
+
o
.
getSubSystem
()
+
o
.
getPointName
(),
weightMap
)
*
o
.
getAnomaly
()).
sum
();
Double
totalWeight
=
v
.
stream
().
mapToDouble
(
o
->
getWeight
(()
->
o
.
getArea
()
+
o
.
getStation
()
+
o
.
getEquipmentName
()
+
o
.
getSubSystem
()
+
o
.
getPointName
(),
weightMap
)).
sum
();
fanHealthIndex
.
setAnomaly
(
totalAnomaly
/
totalWeight
);
fanHealthIndex
.
setHealthIndex
(
totalHealthIndex
/
totalWeight
);
}
catch
(
Exception
e
)
{
// 普通平均
this
.
calculateAvg
(
fanHealthIndex
,
v
);
}
fanHealthIndicesZxtNews
.
add
(
fanHealthIndex
);
});
return
fanHealthIndicesZxtNews
;
}
/**
/**
* 子系统加权平均
* 子系统加权平均
* 加权平均数 = (w1 * x1 + w2 * x2 + … + wn * xn) / (w1 + w2 + … + wn)
* 加权平均数 = (w1 * x1 + w2 * x2 + … + wn * xn) / (w1 + w2 + … + wn)
...
...
amos-boot-system-jxiop/amos-boot-module-jxiop-analyse-biz/src/main/java/com/yeejoin/amos/boot/module/jxiop/biz/service/impl/PvHealthIndexServiceImpl.java
View file @
9060a6a9
...
@@ -37,6 +37,53 @@ public class PvHealthIndexServiceImpl implements IPvHealthIndexService {
...
@@ -37,6 +37,53 @@ public class PvHealthIndexServiceImpl implements IPvHealthIndexService {
@Autowired
@Autowired
private
IdxBizPvWeightMapper
idxBizPvWeightMapper
;
private
IdxBizPvWeightMapper
idxBizPvWeightMapper
;
@Override
public
List
<
PvHealthIndex
>
getInfoListByGroupByCdPv
(
String
startTime
,
String
tableName
,
String
analysisObjectType
)
{
List
<
PvHealthIndex
>
pvHealthIndices
=
pvHealthIndexMapper
.
getInfoList
(
startTime
,
tableName
,
analysisObjectType
);
QueryWrapper
<
IdxBizPvWeight
>
queryWrapper
=
new
QueryWrapper
<>();
queryWrapper
.
eq
(
"type"
,
"5"
);
queryWrapper
.
isNotNull
(
"value"
);
List
<
IdxBizPvWeight
>
idxBizFanWeights
=
idxBizPvWeightMapper
.
selectList
(
queryWrapper
);
Map
<
String
,
Float
>
weightMap
=
idxBizFanWeights
.
stream
().
collect
(
Collectors
.
toMap
(
o
->
o
.
getArae
()
+
o
.
getStation
()
+
o
.
getEquipmentName
()
+
o
.
getSubarray
()
+
o
.
getPointName
(),
IdxBizPvWeight:
:
getValue
));
// 开始计算加权平均
Map
<
String
,
List
<
PvHealthIndex
>>
healthIndicesMap
=
pvHealthIndices
.
stream
().
collect
(
Collectors
.
groupingBy
(
o
->
o
.
getGatewayId
()
+
o
.
getIndexAddress
()
+
o
.
getStation
()
+
o
.
getAnalysisObjType
()
+
o
.
getAnalysisObjSeq
()
+
o
.
getWeight
()
+
o
.
getArea
()
+
o
.
getSubarray
()
+
o
.
getManufacturer
()
+
o
.
getEquipmentName
()
+
o
.
getPointName
()
+
o
.
getDeviceType
()
+
o
.
getKks
()
+
o
.
getOrgCode
()));
List
<
PvHealthIndex
>
pvHealthIndexList
=
new
ArrayList
<>();
healthIndicesMap
.
forEach
((
k
,
v
)
->
{
PvHealthIndex
pvHealthIndex
=
new
PvHealthIndex
();
pvHealthIndex
.
setIndexAddress
(
v
.
get
(
0
).
getIndexAddress
());
pvHealthIndex
.
setGatewayId
(
v
.
get
(
0
).
getGatewayId
());
pvHealthIndex
.
setStation
(
v
.
get
(
0
).
getStation
());
pvHealthIndex
.
setAnalysisObjType
(
"测点"
);
pvHealthIndex
.
setAnalysisObjSeq
(
v
.
get
(
0
).
getAnalysisObjSeq
());
pvHealthIndex
.
setWeight
(
v
.
get
(
0
).
getWeight
());
pvHealthIndex
.
setArea
(
v
.
get
(
0
).
getArea
());
pvHealthIndex
.
setSubarray
(
v
.
get
(
0
).
getSubarray
());
pvHealthIndex
.
setManufacturer
(
v
.
get
(
0
).
getManufacturer
());
pvHealthIndex
.
setEquipmentName
(
v
.
get
(
0
).
getEquipmentName
());
pvHealthIndex
.
setPointName
(
v
.
get
(
0
).
getPointName
());
pvHealthIndex
.
setDeviceType
(
v
.
get
(
0
).
getDeviceType
());
pvHealthIndex
.
setKks
(
v
.
get
(
0
).
getKks
());
pvHealthIndex
.
setOrgCode
(
v
.
get
(
0
).
getOrgCode
());
// 例如 子系统 = (测点1 * 测点1权重 + 测点2 * 测点2权重 + .... 测点n权重) / (测点1权重 + 测点2权重 + .... 测点n权重)
// 但是测点是没有权重的,所以子系统无法计算加权平均
// 设备 = (子系统1 * 子系统1权重 + 子系统2 * 子系统2权重 + .... 子系统n权重) / (子系统1权重 + 子系统2权重 + .... 子系统n权重)
// 但如果没有配置子系统的权重,如何计算?
try
{
// 加权平均
Double
totalHealthIndex
=
v
.
stream
().
mapToDouble
(
o
->
getWeight
(()
->
o
.
getArea
()
+
o
.
getStation
()
+
o
.
getEquipmentName
()
+
o
.
getSubarray
()
+
o
.
getPointName
(),
weightMap
)
*
o
.
getHealthIndex
()).
sum
();
Double
totalAnomaly
=
v
.
stream
().
mapToDouble
(
o
->
getWeight
(()
->
o
.
getArea
()
+
o
.
getStation
()
+
o
.
getEquipmentName
()
+
o
.
getSubarray
()
+
o
.
getPointName
(),
weightMap
)
*
o
.
getAnomaly
()).
sum
();
Double
totalWeight
=
v
.
stream
().
mapToDouble
(
o
->
getWeight
(()
->
o
.
getArea
()
+
o
.
getStation
()
+
o
.
getEquipmentName
()
+
o
.
getSubarray
()
+
o
.
getPointName
(),
weightMap
)).
sum
();
pvHealthIndex
.
setAnomaly
(
totalAnomaly
/
totalWeight
);
pvHealthIndex
.
setHealthIndex
(
totalHealthIndex
/
totalWeight
);
}
catch
(
Exception
e
)
{
// 普通平均
this
.
calculateAvg
(
pvHealthIndex
,
v
);
}
pvHealthIndexList
.
add
(
pvHealthIndex
);
});
return
pvHealthIndexList
;
}
/**
/**
* 设备加权平均
* 设备加权平均
* 加权平均数 = (w1 * x1 + w2 * x2 + … + wn * xn) / (w1 + w2 + … + wn)
* 加权平均数 = (w1 * x1 + w2 * x2 + … + wn * xn) / (w1 + w2 + … + wn)
...
@@ -87,7 +134,6 @@ public class PvHealthIndexServiceImpl implements IPvHealthIndexService {
...
@@ -87,7 +134,6 @@ public class PvHealthIndexServiceImpl implements IPvHealthIndexService {
pvHealthIndex
.
setHealthIndex
(
totalHealthIndex
/
totalWeight
);
pvHealthIndex
.
setHealthIndex
(
totalHealthIndex
/
totalWeight
);
}
catch
(
Exception
e
)
{
}
catch
(
Exception
e
)
{
// 普通平均
// 普通平均
log
.
error
(
"计算加权平均异常"
,
e
.
getMessage
());
this
.
calculateAvg
(
pvHealthIndex
,
v
);
this
.
calculateAvg
(
pvHealthIndex
,
v
);
}
}
pvHealthIndexList
.
add
(
pvHealthIndex
);
pvHealthIndexList
.
add
(
pvHealthIndex
);
...
@@ -144,7 +190,6 @@ public class PvHealthIndexServiceImpl implements IPvHealthIndexService {
...
@@ -144,7 +190,6 @@ public class PvHealthIndexServiceImpl implements IPvHealthIndexService {
pvHealthIndex
.
setHealthIndex
(
totalHealthIndex
/
totalWeight
);
pvHealthIndex
.
setHealthIndex
(
totalHealthIndex
/
totalWeight
);
}
catch
(
Exception
e
)
{
}
catch
(
Exception
e
)
{
// 普通平均
// 普通平均
log
.
error
(
"计算加权平均异常"
,
e
.
getMessage
());
this
.
calculateAvg
(
pvHealthIndex
,
v
);
this
.
calculateAvg
(
pvHealthIndex
,
v
);
}
}
pvHealthIndexList
.
add
(
pvHealthIndex
);
pvHealthIndexList
.
add
(
pvHealthIndex
);
...
@@ -199,7 +244,6 @@ public class PvHealthIndexServiceImpl implements IPvHealthIndexService {
...
@@ -199,7 +244,6 @@ public class PvHealthIndexServiceImpl implements IPvHealthIndexService {
pvHealthIndex
.
setAnomaly
(
totalAnomaly
/
totalWeight
);
pvHealthIndex
.
setAnomaly
(
totalAnomaly
/
totalWeight
);
pvHealthIndex
.
setHealthIndex
(
totalHealthIndex
/
totalWeight
);
pvHealthIndex
.
setHealthIndex
(
totalHealthIndex
/
totalWeight
);
}
catch
(
Exception
e
)
{
}
catch
(
Exception
e
)
{
log
.
error
(
"计算加权平均异常"
,
e
.
getMessage
());
// 普通平均
// 普通平均
this
.
calculateAvg
(
pvHealthIndex
,
v
);
this
.
calculateAvg
(
pvHealthIndex
,
v
);
}
}
...
@@ -253,7 +297,6 @@ public class PvHealthIndexServiceImpl implements IPvHealthIndexService {
...
@@ -253,7 +297,6 @@ public class PvHealthIndexServiceImpl implements IPvHealthIndexService {
pvHealthIndex
.
setAnomaly
(
totalAnomaly
/
totalWeight
);
pvHealthIndex
.
setAnomaly
(
totalAnomaly
/
totalWeight
);
pvHealthIndex
.
setHealthIndex
(
totalHealthIndex
/
totalWeight
);
pvHealthIndex
.
setHealthIndex
(
totalHealthIndex
/
totalWeight
);
}
catch
(
Exception
e
)
{
}
catch
(
Exception
e
)
{
log
.
error
(
"计算加权平均异常"
,
e
.
getMessage
());
// 普通平均
// 普通平均
this
.
calculateAvg
(
pvHealthIndex
,
v
);
this
.
calculateAvg
(
pvHealthIndex
,
v
);
}
}
...
@@ -307,7 +350,6 @@ public class PvHealthIndexServiceImpl implements IPvHealthIndexService {
...
@@ -307,7 +350,6 @@ public class PvHealthIndexServiceImpl implements IPvHealthIndexService {
pvHealthIndex
.
setHealthIndex
(
totalHealthIndex
/
totalWeight
);
pvHealthIndex
.
setHealthIndex
(
totalHealthIndex
/
totalWeight
);
}
catch
(
Exception
e
)
{
}
catch
(
Exception
e
)
{
// 普通平均
// 普通平均
log
.
error
(
"计算加权平均异常"
,
e
.
getMessage
());
this
.
calculateAvg
(
pvHealthIndex
,
v
);
this
.
calculateAvg
(
pvHealthIndex
,
v
);
}
}
pvHealthIndexList
.
add
(
pvHealthIndex
);
pvHealthIndexList
.
add
(
pvHealthIndex
);
...
...
amos-boot-system-jxiop/amos-boot-module-jxiop-analyse-biz/src/main/java/com/yeejoin/amos/boot/module/jxiop/biz/service/impl/TdengineTimeServiceImpl.java
View file @
9060a6a9
...
@@ -24,6 +24,7 @@ import org.springframework.stereotype.Service;
...
@@ -24,6 +24,7 @@ import org.springframework.stereotype.Service;
import
java.text.ParseException
;
import
java.text.ParseException
;
import
java.util.ArrayList
;
import
java.util.ArrayList
;
import
java.util.Comparator
;
import
java.util.Date
;
import
java.util.Date
;
import
java.util.List
;
import
java.util.List
;
...
@@ -69,59 +70,27 @@ public class TdengineTimeServiceImpl {
...
@@ -69,59 +70,27 @@ public class TdengineTimeServiceImpl {
String
startTime
=
DateUtils
.
dateFormat
(
DateUtils
.
dateAddMinutes
(
new
Date
(),
-
489
),
DateUtils
.
DATE_TIME_PATTERN
);
String
startTime
=
DateUtils
.
dateFormat
(
DateUtils
.
dateAddMinutes
(
new
Date
(),
-
489
),
DateUtils
.
DATE_TIME_PATTERN
);
// 子系统
// 子系统
List
<
IdxBizFanHealthLevel
>
levelListZxt
=
idxBizFanHealthLevelMapper
.
selectList
(
new
LambdaQueryWrapper
<
IdxBizFanHealthLevel
>().
eq
(
IdxBizFanHealthLevel:
:
getAnalysisObjType
,
"子系统"
).
last
(
"limit 4"
));
List
<
IdxBizFanHealthLevel
>
levelListZxt
=
idxBizFanHealthLevelMapper
.
selectList
(
new
LambdaQueryWrapper
<
IdxBizFanHealthLevel
>().
eq
(
IdxBizFanHealthLevel:
:
getAnalysisObjType
,
"子系统"
).
last
(
"limit 4"
));
List
<
FanHealthIndex
>
fanHealthIndicesZxt
=
fanHealthIndex
Mapper
.
getInfoListByGroupByZxtFan
(
startTime
,
"fan_health_index_moment"
,
"测点"
);
List
<
FanHealthIndex
>
fanHealthIndicesZxt
=
fanHealthIndex
Service
.
getInfoListByGroupByZxtFan
(
startTime
,
"fan_health_index_moment"
,
"测点"
);
saveBatchFan
(
fanHealthIndicesZxt
,
"fan_health_index_moment"
,
recDate
,
WarningPeriodEnum
.
MINUTES
.
getName
(),
levelListZxt
);
saveBatchFan
(
fanHealthIndicesZxt
,
"fan_health_index_moment"
,
recDate
,
WarningPeriodEnum
.
MINUTES
.
getName
(),
levelListZxt
);
// 设备
// 设备
List
<
IdxBizFanHealthLevel
>
levelListSb
=
idxBizFanHealthLevelMapper
.
selectList
(
new
LambdaQueryWrapper
<
IdxBizFanHealthLevel
>().
eq
(
IdxBizFanHealthLevel:
:
getAnalysisObjType
,
"设备"
).
last
(
"limit 4"
));
List
<
IdxBizFanHealthLevel
>
levelListSb
=
idxBizFanHealthLevelMapper
.
selectList
(
new
LambdaQueryWrapper
<
IdxBizFanHealthLevel
>().
eq
(
IdxBizFanHealthLevel:
:
getAnalysisObjType
,
"设备"
).
last
(
"limit 4"
));
List
<
FanHealthIndex
>
fanHealthIndicesSb
=
fanHealthIndex
Mapper
.
getInfoListByGroupBySbFan
(
startTime
,
"fan_health_index_moment"
,
"子系统"
);
List
<
FanHealthIndex
>
fanHealthIndicesSb
=
fanHealthIndex
Service
.
getInfoListByGroupBySbFan
(
startTime
,
"fan_health_index_moment"
,
"子系统"
);
saveBatchFan
(
fanHealthIndicesSb
,
"fan_health_index_moment"
,
recDate
,
WarningPeriodEnum
.
MINUTES
.
getName
(),
levelListSb
);
saveBatchFan
(
fanHealthIndicesSb
,
"fan_health_index_moment"
,
recDate
,
WarningPeriodEnum
.
MINUTES
.
getName
(),
levelListSb
);
// 场站
// 场站
List
<
IdxBizFanHealthLevel
>
levelListCz
=
idxBizFanHealthLevelMapper
.
selectList
(
new
LambdaQueryWrapper
<
IdxBizFanHealthLevel
>().
eq
(
IdxBizFanHealthLevel:
:
getAnalysisObjType
,
"场站"
).
last
(
"limit 4"
));
List
<
IdxBizFanHealthLevel
>
levelListCz
=
idxBizFanHealthLevelMapper
.
selectList
(
new
LambdaQueryWrapper
<
IdxBizFanHealthLevel
>().
eq
(
IdxBizFanHealthLevel:
:
getAnalysisObjType
,
"场站"
).
last
(
"limit 4"
));
List
<
FanHealthIndex
>
fanHealthIndicesCz
=
fanHealthIndex
Mapper
.
getInfoListByGroupByCzFan
(
startTime
,
"fan_health_index_moment"
,
"设备"
);
List
<
FanHealthIndex
>
fanHealthIndicesCz
=
fanHealthIndex
Service
.
getInfoListByGroupByCzFan
(
startTime
,
"fan_health_index_moment"
,
"设备"
);
saveBatchFan
(
fanHealthIndicesCz
,
"fan_health_index_moment"
,
recDate
,
WarningPeriodEnum
.
MINUTES
.
getName
(),
levelListCz
);
saveBatchFan
(
fanHealthIndicesCz
,
"fan_health_index_moment"
,
recDate
,
WarningPeriodEnum
.
MINUTES
.
getName
(),
levelListCz
);
// 区域
// 区域
List
<
IdxBizFanHealthLevel
>
levelListQy
=
idxBizFanHealthLevelMapper
.
selectList
(
new
LambdaQueryWrapper
<
IdxBizFanHealthLevel
>().
eq
(
IdxBizFanHealthLevel:
:
getAnalysisObjType
,
"片区"
).
last
(
"limit 4"
));
List
<
IdxBizFanHealthLevel
>
levelListQy
=
idxBizFanHealthLevelMapper
.
selectList
(
new
LambdaQueryWrapper
<
IdxBizFanHealthLevel
>().
eq
(
IdxBizFanHealthLevel:
:
getAnalysisObjType
,
"片区"
).
last
(
"limit 4"
));
List
<
FanHealthIndex
>
fanHealthIndicesQy
=
fanHealthIndex
Mapper
.
getInfoListByGroupByQyFan
(
startTime
,
"fan_health_index_moment"
,
"场站"
);
List
<
FanHealthIndex
>
fanHealthIndicesQy
=
fanHealthIndex
Service
.
getInfoListByGroupByQyFan
(
startTime
,
"fan_health_index_moment"
,
"场站"
);
saveBatchFan
(
fanHealthIndicesQy
,
"fan_health_index_moment"
,
recDate
,
WarningPeriodEnum
.
MINUTES
.
getName
(),
levelListQy
);
saveBatchFan
(
fanHealthIndicesQy
,
"fan_health_index_moment"
,
recDate
,
WarningPeriodEnum
.
MINUTES
.
getName
(),
levelListQy
);
// 全域【所有 / 全国】
// 全域【所有 / 全国】
List
<
IdxBizFanHealthLevel
>
levelListQg
=
idxBizFanHealthLevelMapper
.
selectList
(
new
LambdaQueryWrapper
<
IdxBizFanHealthLevel
>().
eq
(
IdxBizFanHealthLevel:
:
getAnalysisObjType
,
"全域"
).
last
(
"limit 4"
));
List
<
IdxBizFanHealthLevel
>
levelListQg
=
idxBizFanHealthLevelMapper
.
selectList
(
new
LambdaQueryWrapper
<
IdxBizFanHealthLevel
>().
eq
(
IdxBizFanHealthLevel:
:
getAnalysisObjType
,
"全域"
).
last
(
"limit 4"
));
List
<
FanHealthIndex
>
fanHealthIndicesQg
=
fanHealthIndex
Mapper
.
getInfoListByGroupByQgFan
(
startTime
,
"fan_health_index_moment"
,
"片区"
);
List
<
FanHealthIndex
>
fanHealthIndicesQg
=
fanHealthIndex
Service
.
getInfoListByGroupByQgFan
(
startTime
,
"fan_health_index_moment"
,
"片区"
);
saveBatchFan
(
fanHealthIndicesQg
,
"fan_health_index_moment"
,
recDate
,
WarningPeriodEnum
.
MINUTES
.
getName
(),
levelListQg
);
saveBatchFan
(
fanHealthIndicesQg
,
"fan_health_index_moment"
,
recDate
,
WarningPeriodEnum
.
MINUTES
.
getName
(),
levelListQg
);
}
}
public
void
insertMomentDataNew
(
String
recDate
)
throws
ParseException
{
//s 489分钟 为 8小时 + 19分钟
String
startTime
=
DateUtils
.
dateFormat
(
DateUtils
.
dateAddMinutes
(
new
Date
(),
-
489
),
DateUtils
.
DATE_TIME_PATTERN
);
startTime
=
"2024-07-23 08:00:00"
;
// 子系统
List
<
IdxBizFanHealthLevel
>
levelListZxt
=
idxBizFanHealthLevelMapper
.
selectList
(
new
LambdaQueryWrapper
<
IdxBizFanHealthLevel
>().
eq
(
IdxBizFanHealthLevel:
:
getAnalysisObjType
,
"子系统"
).
last
(
"limit 4"
));
List
<
FanHealthIndex
>
fanHealthIndices
=
fanHealthIndexService
.
getInfoListByGroupByZxtFan
(
startTime
,
"fan_health_index_moment"
,
"测点"
);
List
<
FanHealthIndex
>
fanHealthIndicesZxt
=
fanHealthIndexMapper
.
getInfoListByGroupByZxtFan
(
startTime
,
"fan_health_index_moment"
,
"测点"
);
//saveBatchFan(fanHealthIndicesZxt, "fan_health_index_moment", recDate, WarningPeriodEnum.MINUTES.getName(), levelListZxt);
// 设备
List
<
IdxBizFanHealthLevel
>
levelListSb
=
idxBizFanHealthLevelMapper
.
selectList
(
new
LambdaQueryWrapper
<
IdxBizFanHealthLevel
>().
eq
(
IdxBizFanHealthLevel:
:
getAnalysisObjType
,
"设备"
).
last
(
"limit 4"
));
List
<
FanHealthIndex
>
fanHealthIndicesSb
=
fanHealthIndexMapper
.
getInfoListByGroupBySbFan
(
startTime
,
"fan_health_index_moment"
,
"子系统"
);
//saveBatchFan(fanHealthIndicesSb, "fan_health_index_moment", recDate, WarningPeriodEnum.MINUTES.getName(), levelListSb);
// 场站
List
<
IdxBizFanHealthLevel
>
levelListCz
=
idxBizFanHealthLevelMapper
.
selectList
(
new
LambdaQueryWrapper
<
IdxBizFanHealthLevel
>().
eq
(
IdxBizFanHealthLevel:
:
getAnalysisObjType
,
"场站"
).
last
(
"limit 4"
));
List
<
FanHealthIndex
>
fanHealthIndicesCz
=
fanHealthIndexMapper
.
getInfoListByGroupByCzFan
(
startTime
,
"fan_health_index_moment"
,
"设备"
);
//saveBatchFan(fanHealthIndicesCz, "fan_health_index_moment", recDate, WarningPeriodEnum.MINUTES.getName(), levelListCz);
// 区域
List
<
IdxBizFanHealthLevel
>
levelListQy
=
idxBizFanHealthLevelMapper
.
selectList
(
new
LambdaQueryWrapper
<
IdxBizFanHealthLevel
>().
eq
(
IdxBizFanHealthLevel:
:
getAnalysisObjType
,
"片区"
).
last
(
"limit 4"
));
List
<
FanHealthIndex
>
fanHealthIndicesQy
=
fanHealthIndexMapper
.
getInfoListByGroupByQyFan
(
startTime
,
"fan_health_index_moment"
,
"场站"
);
//saveBatchFan(fanHealthIndicesQy, "fan_health_index_moment", recDate, WarningPeriodEnum.MINUTES.getName(), levelListQy);
// 全域【所有 / 全国】
List
<
IdxBizFanHealthLevel
>
levelListQg
=
idxBizFanHealthLevelMapper
.
selectList
(
new
LambdaQueryWrapper
<
IdxBizFanHealthLevel
>().
eq
(
IdxBizFanHealthLevel:
:
getAnalysisObjType
,
"全域"
).
last
(
"limit 4"
));
List
<
FanHealthIndex
>
fanHealthIndicesQg
=
fanHealthIndexMapper
.
getInfoListByGroupByQgFan
(
startTime
,
"fan_health_index_moment"
,
"片区"
);
// saveBatchFan(fanHealthIndicesQg, "fan_health_index_moment", recDate, WarningPeriodEnum.MINUTES.getName(), levelListQg);
}
/**
/**
* 风电 - 按小时生成测点、子系统、设备、场站、区域 数据
* 风电 - 按小时生成测点、子系统、设备、场站、区域 数据
...
@@ -141,24 +110,24 @@ public class TdengineTimeServiceImpl {
...
@@ -141,24 +110,24 @@ public class TdengineTimeServiceImpl {
saveBatchFan
(
fanHealthIndices
,
"fan_health_index_hour"
,
recDate
,
WarningPeriodEnum
.
HOUR
.
getName
(),
levelList
);
saveBatchFan
(
fanHealthIndices
,
"fan_health_index_hour"
,
recDate
,
WarningPeriodEnum
.
HOUR
.
getName
(),
levelList
);
// 子系统
// 子系统
List
<
IdxBizFanHealthLevel
>
levelListZxt
=
idxBizFanHealthLevelMapper
.
selectList
(
new
LambdaQueryWrapper
<
IdxBizFanHealthLevel
>().
eq
(
IdxBizFanHealthLevel:
:
getAnalysisObjType
,
"子系统"
).
last
(
"limit 4"
));
List
<
IdxBizFanHealthLevel
>
levelListZxt
=
idxBizFanHealthLevelMapper
.
selectList
(
new
LambdaQueryWrapper
<
IdxBizFanHealthLevel
>().
eq
(
IdxBizFanHealthLevel:
:
getAnalysisObjType
,
"子系统"
).
last
(
"limit 4"
));
List
<
FanHealthIndex
>
fanHealthIndicesZxt
=
fanHealthIndex
Mapper
.
getInfoListByGroupByZxtFan
(
startTime
,
"fan_health_index_moment"
,
"测点"
);
List
<
FanHealthIndex
>
fanHealthIndicesZxt
=
fanHealthIndex
Service
.
getInfoListByGroupByZxtFan
(
startTime
,
"fan_health_index_moment"
,
"测点"
);
saveBatchFan
(
fanHealthIndicesZxt
,
"fan_health_index_hour"
,
recDate
,
WarningPeriodEnum
.
HOUR
.
getName
(),
levelListZxt
);
saveBatchFan
(
fanHealthIndicesZxt
,
"fan_health_index_hour"
,
recDate
,
WarningPeriodEnum
.
HOUR
.
getName
(),
levelListZxt
);
// 设备
// 设备
List
<
IdxBizFanHealthLevel
>
levelListSb
=
idxBizFanHealthLevelMapper
.
selectList
(
new
LambdaQueryWrapper
<
IdxBizFanHealthLevel
>().
eq
(
IdxBizFanHealthLevel:
:
getAnalysisObjType
,
"设备"
).
last
(
"limit 4"
));
List
<
IdxBizFanHealthLevel
>
levelListSb
=
idxBizFanHealthLevelMapper
.
selectList
(
new
LambdaQueryWrapper
<
IdxBizFanHealthLevel
>().
eq
(
IdxBizFanHealthLevel:
:
getAnalysisObjType
,
"设备"
).
last
(
"limit 4"
));
List
<
FanHealthIndex
>
fanHealthIndicesSb
=
fanHealthIndex
Mapper
.
getInfoListByGroupBySbFan
(
startTime
,
"fan_health_index_moment"
,
"子系统"
);
List
<
FanHealthIndex
>
fanHealthIndicesSb
=
fanHealthIndex
Service
.
getInfoListByGroupBySbFan
(
startTime
,
"fan_health_index_moment"
,
"子系统"
);
saveBatchFan
(
fanHealthIndicesSb
,
"fan_health_index_hour"
,
recDate
,
WarningPeriodEnum
.
HOUR
.
getName
(),
levelListSb
);
saveBatchFan
(
fanHealthIndicesSb
,
"fan_health_index_hour"
,
recDate
,
WarningPeriodEnum
.
HOUR
.
getName
(),
levelListSb
);
// 场站
// 场站
List
<
IdxBizFanHealthLevel
>
levelListCz
=
idxBizFanHealthLevelMapper
.
selectList
(
new
LambdaQueryWrapper
<
IdxBizFanHealthLevel
>().
eq
(
IdxBizFanHealthLevel:
:
getAnalysisObjType
,
"场站"
).
last
(
"limit 4"
));
List
<
IdxBizFanHealthLevel
>
levelListCz
=
idxBizFanHealthLevelMapper
.
selectList
(
new
LambdaQueryWrapper
<
IdxBizFanHealthLevel
>().
eq
(
IdxBizFanHealthLevel:
:
getAnalysisObjType
,
"场站"
).
last
(
"limit 4"
));
List
<
FanHealthIndex
>
fanHealthIndicesCz
=
fanHealthIndex
Mapper
.
getInfoListByGroupByCzFan
(
startTime
,
"fan_health_index_moment"
,
"设备"
);
List
<
FanHealthIndex
>
fanHealthIndicesCz
=
fanHealthIndex
Service
.
getInfoListByGroupByCzFan
(
startTime
,
"fan_health_index_moment"
,
"设备"
);
saveBatchFan
(
fanHealthIndicesCz
,
"fan_health_index_hour"
,
recDate
,
WarningPeriodEnum
.
HOUR
.
getName
(),
levelListCz
);
saveBatchFan
(
fanHealthIndicesCz
,
"fan_health_index_hour"
,
recDate
,
WarningPeriodEnum
.
HOUR
.
getName
(),
levelListCz
);
// 区域
// 区域
List
<
IdxBizFanHealthLevel
>
levelListQy
=
idxBizFanHealthLevelMapper
.
selectList
(
new
LambdaQueryWrapper
<
IdxBizFanHealthLevel
>().
eq
(
IdxBizFanHealthLevel:
:
getAnalysisObjType
,
"片区"
).
last
(
"limit 4"
));
List
<
IdxBizFanHealthLevel
>
levelListQy
=
idxBizFanHealthLevelMapper
.
selectList
(
new
LambdaQueryWrapper
<
IdxBizFanHealthLevel
>().
eq
(
IdxBizFanHealthLevel:
:
getAnalysisObjType
,
"片区"
).
last
(
"limit 4"
));
List
<
FanHealthIndex
>
fanHealthIndicesQy
=
fanHealthIndex
Mapper
.
getInfoListByGroupByQyFan
(
startTime
,
"fan_health_index_moment"
,
"场站"
);
List
<
FanHealthIndex
>
fanHealthIndicesQy
=
fanHealthIndex
Service
.
getInfoListByGroupByQyFan
(
startTime
,
"fan_health_index_moment"
,
"场站"
);
saveBatchFan
(
fanHealthIndicesQy
,
"fan_health_index_hour"
,
recDate
,
WarningPeriodEnum
.
HOUR
.
getName
(),
levelListQy
);
saveBatchFan
(
fanHealthIndicesQy
,
"fan_health_index_hour"
,
recDate
,
WarningPeriodEnum
.
HOUR
.
getName
(),
levelListQy
);
// 全域【所有 / 全国】
// 全域【所有 / 全国】
List
<
IdxBizFanHealthLevel
>
levelListQg
=
idxBizFanHealthLevelMapper
.
selectList
(
new
LambdaQueryWrapper
<
IdxBizFanHealthLevel
>().
eq
(
IdxBizFanHealthLevel:
:
getAnalysisObjType
,
"全域"
).
last
(
"limit 4"
));
List
<
IdxBizFanHealthLevel
>
levelListQg
=
idxBizFanHealthLevelMapper
.
selectList
(
new
LambdaQueryWrapper
<
IdxBizFanHealthLevel
>().
eq
(
IdxBizFanHealthLevel:
:
getAnalysisObjType
,
"全域"
).
last
(
"limit 4"
));
List
<
FanHealthIndex
>
fanHealthIndicesQg
=
fanHealthIndex
Mapper
.
getInfoListByGroupByQgFan
(
startTime
,
"fan_health_index_moment"
,
"片区"
);
List
<
FanHealthIndex
>
fanHealthIndicesQg
=
fanHealthIndex
Service
.
getInfoListByGroupByQgFan
(
startTime
,
"fan_health_index_moment"
,
"片区"
);
saveBatchFan
(
fanHealthIndicesQg
,
"fan_health_index_hour"
,
recDate
,
WarningPeriodEnum
.
HOUR
.
getName
(),
levelListQg
);
saveBatchFan
(
fanHealthIndicesQg
,
"fan_health_index_hour"
,
recDate
,
WarningPeriodEnum
.
HOUR
.
getName
(),
levelListQg
);
//预警生成
//预警生成
...
@@ -184,23 +153,23 @@ public class TdengineTimeServiceImpl {
...
@@ -184,23 +153,23 @@ public class TdengineTimeServiceImpl {
// 子系统
// 子系统
List
<
IdxBizFanHealthLevel
>
levelListZxt
=
idxBizFanHealthLevelMapper
.
selectList
(
new
LambdaQueryWrapper
<
IdxBizFanHealthLevel
>().
eq
(
IdxBizFanHealthLevel:
:
getAnalysisObjType
,
"子系统"
).
last
(
"limit 4"
));
List
<
IdxBizFanHealthLevel
>
levelListZxt
=
idxBizFanHealthLevelMapper
.
selectList
(
new
LambdaQueryWrapper
<
IdxBizFanHealthLevel
>().
eq
(
IdxBizFanHealthLevel:
:
getAnalysisObjType
,
"子系统"
).
last
(
"limit 4"
));
List
<
FanHealthIndex
>
fanHealthIndicesZxt
=
fanHealthIndex
Mapper
.
getInfoListByGroupByZxtFan
(
startTime
,
"fan_health_index_hour"
,
"测点"
);
List
<
FanHealthIndex
>
fanHealthIndicesZxt
=
fanHealthIndex
Service
.
getInfoListByGroupByZxtFan
(
startTime
,
"fan_health_index_hour"
,
"测点"
);
saveBatchFan
(
fanHealthIndicesZxt
,
"fan_health_index_day"
,
recDate
,
WarningPeriodEnum
.
DAY
.
getName
(),
levelListZxt
);
saveBatchFan
(
fanHealthIndicesZxt
,
"fan_health_index_day"
,
recDate
,
WarningPeriodEnum
.
DAY
.
getName
(),
levelListZxt
);
// 设备
// 设备
List
<
IdxBizFanHealthLevel
>
levelListSb
=
idxBizFanHealthLevelMapper
.
selectList
(
new
LambdaQueryWrapper
<
IdxBizFanHealthLevel
>().
eq
(
IdxBizFanHealthLevel:
:
getAnalysisObjType
,
"设备"
).
last
(
"limit 4"
));
List
<
IdxBizFanHealthLevel
>
levelListSb
=
idxBizFanHealthLevelMapper
.
selectList
(
new
LambdaQueryWrapper
<
IdxBizFanHealthLevel
>().
eq
(
IdxBizFanHealthLevel:
:
getAnalysisObjType
,
"设备"
).
last
(
"limit 4"
));
List
<
FanHealthIndex
>
fanHealthIndicesSb
=
fanHealthIndex
Mapper
.
getInfoListByGroupBySbFan
(
startTime
,
"fan_health_index_hour"
,
"子系统"
);
List
<
FanHealthIndex
>
fanHealthIndicesSb
=
fanHealthIndex
Service
.
getInfoListByGroupBySbFan
(
startTime
,
"fan_health_index_hour"
,
"子系统"
);
saveBatchFan
(
fanHealthIndicesSb
,
"fan_health_index_day"
,
recDate
,
WarningPeriodEnum
.
DAY
.
getName
(),
levelListSb
);
saveBatchFan
(
fanHealthIndicesSb
,
"fan_health_index_day"
,
recDate
,
WarningPeriodEnum
.
DAY
.
getName
(),
levelListSb
);
// 场站
// 场站
List
<
IdxBizFanHealthLevel
>
levelListCz
=
idxBizFanHealthLevelMapper
.
selectList
(
new
LambdaQueryWrapper
<
IdxBizFanHealthLevel
>().
eq
(
IdxBizFanHealthLevel:
:
getAnalysisObjType
,
"场站"
).
last
(
"limit 4"
));
List
<
IdxBizFanHealthLevel
>
levelListCz
=
idxBizFanHealthLevelMapper
.
selectList
(
new
LambdaQueryWrapper
<
IdxBizFanHealthLevel
>().
eq
(
IdxBizFanHealthLevel:
:
getAnalysisObjType
,
"场站"
).
last
(
"limit 4"
));
List
<
FanHealthIndex
>
fanHealthIndicesCz
=
fanHealthIndex
Mapper
.
getInfoListByGroupByCzFan
(
startTime
,
"fan_health_index_hour"
,
"设备"
);
List
<
FanHealthIndex
>
fanHealthIndicesCz
=
fanHealthIndex
Service
.
getInfoListByGroupByCzFan
(
startTime
,
"fan_health_index_hour"
,
"设备"
);
saveBatchFan
(
fanHealthIndicesCz
,
"fan_health_index_day"
,
recDate
,
WarningPeriodEnum
.
DAY
.
getName
(),
levelListCz
);
saveBatchFan
(
fanHealthIndicesCz
,
"fan_health_index_day"
,
recDate
,
WarningPeriodEnum
.
DAY
.
getName
(),
levelListCz
);
// 区域
// 区域
List
<
IdxBizFanHealthLevel
>
levelListQy
=
idxBizFanHealthLevelMapper
.
selectList
(
new
LambdaQueryWrapper
<
IdxBizFanHealthLevel
>().
eq
(
IdxBizFanHealthLevel:
:
getAnalysisObjType
,
"片区"
).
last
(
"limit 4"
));
List
<
IdxBizFanHealthLevel
>
levelListQy
=
idxBizFanHealthLevelMapper
.
selectList
(
new
LambdaQueryWrapper
<
IdxBizFanHealthLevel
>().
eq
(
IdxBizFanHealthLevel:
:
getAnalysisObjType
,
"片区"
).
last
(
"limit 4"
));
List
<
FanHealthIndex
>
fanHealthIndicesQy
=
fanHealthIndex
Mapper
.
getInfoListByGroupByQyFan
(
startTime
,
"fan_health_index_hour"
,
"场站"
);
List
<
FanHealthIndex
>
fanHealthIndicesQy
=
fanHealthIndex
Service
.
getInfoListByGroupByQyFan
(
startTime
,
"fan_health_index_hour"
,
"场站"
);
saveBatchFan
(
fanHealthIndicesQy
,
"fan_health_index_day"
,
recDate
,
WarningPeriodEnum
.
DAY
.
getName
(),
levelListQy
);
saveBatchFan
(
fanHealthIndicesQy
,
"fan_health_index_day"
,
recDate
,
WarningPeriodEnum
.
DAY
.
getName
(),
levelListQy
);
// 全域【所有 / 全国】
// 全域【所有 / 全国】
List
<
IdxBizFanHealthLevel
>
levelListQg
=
idxBizFanHealthLevelMapper
.
selectList
(
new
LambdaQueryWrapper
<
IdxBizFanHealthLevel
>().
eq
(
IdxBizFanHealthLevel:
:
getAnalysisObjType
,
"全域"
).
last
(
"limit 4"
));
List
<
IdxBizFanHealthLevel
>
levelListQg
=
idxBizFanHealthLevelMapper
.
selectList
(
new
LambdaQueryWrapper
<
IdxBizFanHealthLevel
>().
eq
(
IdxBizFanHealthLevel:
:
getAnalysisObjType
,
"全域"
).
last
(
"limit 4"
));
List
<
FanHealthIndex
>
fanHealthIndicesQg
=
fanHealthIndex
Mapper
.
getInfoListByGroupByQgFan
(
startTime
,
"fan_health_index_hour"
,
"片区"
);
List
<
FanHealthIndex
>
fanHealthIndicesQg
=
fanHealthIndex
Service
.
getInfoListByGroupByQgFan
(
startTime
,
"fan_health_index_hour"
,
"片区"
);
saveBatchFan
(
fanHealthIndicesQg
,
"fan_health_index_day"
,
recDate
,
WarningPeriodEnum
.
DAY
.
getName
(),
levelListQg
);
saveBatchFan
(
fanHealthIndicesQg
,
"fan_health_index_day"
,
recDate
,
WarningPeriodEnum
.
DAY
.
getName
(),
levelListQg
);
//预警生成
//预警生成
...
@@ -254,28 +223,29 @@ public class TdengineTimeServiceImpl {
...
@@ -254,28 +223,29 @@ public class TdengineTimeServiceImpl {
String
startTime
=
DateUtils
.
dateFormat
(
DateUtils
.
dateAddMinutes
(
new
Date
(),
-
489
),
DateUtils
.
DATE_TIME_PATTERN
);
String
startTime
=
DateUtils
.
dateFormat
(
DateUtils
.
dateAddMinutes
(
new
Date
(),
-
489
),
DateUtils
.
DATE_TIME_PATTERN
);
// 设备
// 设备
List
<
IdxBizPvHealthLevel
>
levelListSb
=
idxBizPvHealthLevelMapper
.
selectList
(
new
LambdaQueryWrapper
<
IdxBizPvHealthLevel
>().
eq
(
IdxBizPvHealthLevel:
:
getAnalysisObjType
,
"设备"
).
last
(
"limit 4"
));
List
<
IdxBizPvHealthLevel
>
levelListSb
=
idxBizPvHealthLevelMapper
.
selectList
(
new
LambdaQueryWrapper
<
IdxBizPvHealthLevel
>().
eq
(
IdxBizPvHealthLevel:
:
getAnalysisObjType
,
"设备"
).
last
(
"limit 4"
));
List
<
PvHealthIndex
>
fanHealthIndicesSb
=
pvHealthIndex
Mapper
.
getInfoListByGroupBySbPv
(
startTime
,
"pv_health_index_moment"
,
"测点"
);
List
<
PvHealthIndex
>
fanHealthIndicesSb
=
pvHealthIndex
Service
.
getInfoListByGroupBySbPv
(
startTime
,
"pv_health_index_moment"
,
"测点"
);
saveBatchPv
(
fanHealthIndicesSb
,
"pv_health_index_moment"
,
recDate
,
WarningPeriodEnum
.
MINUTES
.
getName
(),
levelListSb
);
saveBatchPv
(
fanHealthIndicesSb
,
"pv_health_index_moment"
,
recDate
,
WarningPeriodEnum
.
MINUTES
.
getName
(),
levelListSb
);
// 子阵
// 子阵
List
<
IdxBizPvHealthLevel
>
levelListZz
=
idxBizPvHealthLevelMapper
.
selectList
(
new
LambdaQueryWrapper
<
IdxBizPvHealthLevel
>().
eq
(
IdxBizPvHealthLevel:
:
getAnalysisObjType
,
"子阵"
).
last
(
"limit 4"
));
List
<
IdxBizPvHealthLevel
>
levelListZz
=
idxBizPvHealthLevelMapper
.
selectList
(
new
LambdaQueryWrapper
<
IdxBizPvHealthLevel
>().
eq
(
IdxBizPvHealthLevel:
:
getAnalysisObjType
,
"子阵"
).
last
(
"limit 4"
));
List
<
PvHealthIndex
>
fanHealthIndicesZz
=
pvHealthIndex
Mapper
.
getInfoListByGroupByZzPv
(
startTime
,
"pv_health_index_moment"
,
"设备"
);
List
<
PvHealthIndex
>
fanHealthIndicesZz
=
pvHealthIndex
Service
.
getInfoListByGroupByZzPv
(
startTime
,
"pv_health_index_moment"
,
"设备"
);
saveBatchPv
(
fanHealthIndicesZz
,
"pv_health_index_moment"
,
recDate
,
WarningPeriodEnum
.
MINUTES
.
getName
(),
levelListZz
);
saveBatchPv
(
fanHealthIndicesZz
,
"pv_health_index_moment"
,
recDate
,
WarningPeriodEnum
.
MINUTES
.
getName
(),
levelListZz
);
// 场站
// 场站
List
<
IdxBizPvHealthLevel
>
levelListCz
=
idxBizPvHealthLevelMapper
.
selectList
(
new
LambdaQueryWrapper
<
IdxBizPvHealthLevel
>().
eq
(
IdxBizPvHealthLevel:
:
getAnalysisObjType
,
"场站"
).
last
(
"limit 4"
));
List
<
IdxBizPvHealthLevel
>
levelListCz
=
idxBizPvHealthLevelMapper
.
selectList
(
new
LambdaQueryWrapper
<
IdxBizPvHealthLevel
>().
eq
(
IdxBizPvHealthLevel:
:
getAnalysisObjType
,
"场站"
).
last
(
"limit 4"
));
List
<
PvHealthIndex
>
fanHealthIndicesCz
=
pvHealthIndex
Mapper
.
getInfoListByGroupByCzPv
(
startTime
,
"pv_health_index_moment"
,
"子阵"
);
List
<
PvHealthIndex
>
fanHealthIndicesCz
=
pvHealthIndex
Service
.
getInfoListByGroupByCzPv
(
startTime
,
"pv_health_index_moment"
,
"子阵"
);
saveBatchPv
(
fanHealthIndicesCz
,
"pv_health_index_moment"
,
recDate
,
WarningPeriodEnum
.
MINUTES
.
getName
(),
levelListCz
);
saveBatchPv
(
fanHealthIndicesCz
,
"pv_health_index_moment"
,
recDate
,
WarningPeriodEnum
.
MINUTES
.
getName
(),
levelListCz
);
// 片区
// 片区
List
<
IdxBizPvHealthLevel
>
levelListQy
=
idxBizPvHealthLevelMapper
.
selectList
(
new
LambdaQueryWrapper
<
IdxBizPvHealthLevel
>().
eq
(
IdxBizPvHealthLevel:
:
getAnalysisObjType
,
"片区"
).
last
(
"limit 4"
));
List
<
IdxBizPvHealthLevel
>
levelListQy
=
idxBizPvHealthLevelMapper
.
selectList
(
new
LambdaQueryWrapper
<
IdxBizPvHealthLevel
>().
eq
(
IdxBizPvHealthLevel:
:
getAnalysisObjType
,
"片区"
).
last
(
"limit 4"
));
List
<
PvHealthIndex
>
fanHealthIndicesQy
=
pvHealthIndex
Mapper
.
getInfoListByGroupByQyPv
(
startTime
,
"pv_health_index_moment"
,
"场站"
);
List
<
PvHealthIndex
>
fanHealthIndicesQy
=
pvHealthIndex
Service
.
getInfoListByGroupByQyPv
(
startTime
,
"pv_health_index_moment"
,
"场站"
);
saveBatchPv
(
fanHealthIndicesQy
,
"pv_health_index_moment"
,
recDate
,
WarningPeriodEnum
.
MINUTES
.
getName
(),
levelListQy
);
saveBatchPv
(
fanHealthIndicesQy
,
"pv_health_index_moment"
,
recDate
,
WarningPeriodEnum
.
MINUTES
.
getName
(),
levelListQy
);
// 全域【所有 / 全国】
// 全域【所有 / 全国】
List
<
IdxBizPvHealthLevel
>
levelListQg
=
idxBizPvHealthLevelMapper
.
selectList
(
new
LambdaQueryWrapper
<
IdxBizPvHealthLevel
>().
eq
(
IdxBizPvHealthLevel:
:
getAnalysisObjType
,
"全域"
).
last
(
"limit 4"
));
List
<
IdxBizPvHealthLevel
>
levelListQg
=
idxBizPvHealthLevelMapper
.
selectList
(
new
LambdaQueryWrapper
<
IdxBizPvHealthLevel
>().
eq
(
IdxBizPvHealthLevel:
:
getAnalysisObjType
,
"全域"
).
last
(
"limit 4"
));
List
<
PvHealthIndex
>
fanHealthIndicesQg
=
pvHealthIndex
Mapper
.
getInfoListByGroupByQgPv
(
startTime
,
"pv_health_index_moment"
,
"片区"
);
List
<
PvHealthIndex
>
fanHealthIndicesQg
=
pvHealthIndex
Service
.
getInfoListByGroupByQgPv
(
startTime
,
"pv_health_index_moment"
,
"片区"
);
saveBatchPv
(
fanHealthIndicesQg
,
"pv_health_index_moment"
,
recDate
,
WarningPeriodEnum
.
MINUTES
.
getName
(),
levelListQg
);
saveBatchPv
(
fanHealthIndicesQg
,
"pv_health_index_moment"
,
recDate
,
WarningPeriodEnum
.
MINUTES
.
getName
(),
levelListQg
);
}
}
/**
/**
* 光伏 - 按小时生成 测点、设备、子阵、场站和片区数据
* 光伏 - 按小时生成 测点、设备、子阵、场站和片区数据
*/
*/
...
@@ -294,23 +264,23 @@ public class TdengineTimeServiceImpl {
...
@@ -294,23 +264,23 @@ public class TdengineTimeServiceImpl {
saveBatchPv
(
fanHealthIndices
,
"pv_health_index_hour"
,
recDate
,
WarningPeriodEnum
.
HOUR
.
getName
(),
levelList
);
saveBatchPv
(
fanHealthIndices
,
"pv_health_index_hour"
,
recDate
,
WarningPeriodEnum
.
HOUR
.
getName
(),
levelList
);
// 设备
// 设备
List
<
IdxBizPvHealthLevel
>
levelListSb
=
idxBizPvHealthLevelMapper
.
selectList
(
new
LambdaQueryWrapper
<
IdxBizPvHealthLevel
>().
eq
(
IdxBizPvHealthLevel:
:
getAnalysisObjType
,
"设备"
).
last
(
"limit 4"
));
List
<
IdxBizPvHealthLevel
>
levelListSb
=
idxBizPvHealthLevelMapper
.
selectList
(
new
LambdaQueryWrapper
<
IdxBizPvHealthLevel
>().
eq
(
IdxBizPvHealthLevel:
:
getAnalysisObjType
,
"设备"
).
last
(
"limit 4"
));
List
<
PvHealthIndex
>
fanHealthIndicesSb
=
pvHealthIndex
Mapper
.
getInfoListByGroupBySbPv
(
startTime
,
"pv_health_index_moment"
,
"测点"
);
List
<
PvHealthIndex
>
fanHealthIndicesSb
=
pvHealthIndex
Service
.
getInfoListByGroupBySbPv
(
startTime
,
"pv_health_index_moment"
,
"测点"
);
saveBatchPv
(
fanHealthIndicesSb
,
"pv_health_index_hour"
,
recDate
,
WarningPeriodEnum
.
HOUR
.
getName
(),
levelListSb
);
saveBatchPv
(
fanHealthIndicesSb
,
"pv_health_index_hour"
,
recDate
,
WarningPeriodEnum
.
HOUR
.
getName
(),
levelListSb
);
// 子阵
// 子阵
List
<
IdxBizPvHealthLevel
>
levelListZz
=
idxBizPvHealthLevelMapper
.
selectList
(
new
LambdaQueryWrapper
<
IdxBizPvHealthLevel
>().
eq
(
IdxBizPvHealthLevel:
:
getAnalysisObjType
,
"子阵"
).
last
(
"limit 4"
));
List
<
IdxBizPvHealthLevel
>
levelListZz
=
idxBizPvHealthLevelMapper
.
selectList
(
new
LambdaQueryWrapper
<
IdxBizPvHealthLevel
>().
eq
(
IdxBizPvHealthLevel:
:
getAnalysisObjType
,
"子阵"
).
last
(
"limit 4"
));
List
<
PvHealthIndex
>
fanHealthIndicesZz
=
pvHealthIndex
Mapper
.
getInfoListByGroupByZzPv
(
startTime
,
"pv_health_index_moment"
,
"设备"
);
List
<
PvHealthIndex
>
fanHealthIndicesZz
=
pvHealthIndex
Service
.
getInfoListByGroupByZzPv
(
startTime
,
"pv_health_index_moment"
,
"设备"
);
saveBatchPv
(
fanHealthIndicesZz
,
"pv_health_index_hour"
,
recDate
,
WarningPeriodEnum
.
HOUR
.
getName
(),
levelListZz
);
saveBatchPv
(
fanHealthIndicesZz
,
"pv_health_index_hour"
,
recDate
,
WarningPeriodEnum
.
HOUR
.
getName
(),
levelListZz
);
// 场站
// 场站
List
<
IdxBizPvHealthLevel
>
levelListCz
=
idxBizPvHealthLevelMapper
.
selectList
(
new
LambdaQueryWrapper
<
IdxBizPvHealthLevel
>().
eq
(
IdxBizPvHealthLevel:
:
getAnalysisObjType
,
"场站"
).
last
(
"limit 4"
));
List
<
IdxBizPvHealthLevel
>
levelListCz
=
idxBizPvHealthLevelMapper
.
selectList
(
new
LambdaQueryWrapper
<
IdxBizPvHealthLevel
>().
eq
(
IdxBizPvHealthLevel:
:
getAnalysisObjType
,
"场站"
).
last
(
"limit 4"
));
List
<
PvHealthIndex
>
fanHealthIndicesCz
=
pvHealthIndex
Mapper
.
getInfoListByGroupByCzPv
(
startTime
,
"pv_health_index_moment"
,
"子阵"
);
List
<
PvHealthIndex
>
fanHealthIndicesCz
=
pvHealthIndex
Service
.
getInfoListByGroupByCzPv
(
startTime
,
"pv_health_index_moment"
,
"子阵"
);
saveBatchPv
(
fanHealthIndicesCz
,
"pv_health_index_hour"
,
recDate
,
WarningPeriodEnum
.
HOUR
.
getName
(),
levelListCz
);
saveBatchPv
(
fanHealthIndicesCz
,
"pv_health_index_hour"
,
recDate
,
WarningPeriodEnum
.
HOUR
.
getName
(),
levelListCz
);
// 片区
// 片区
List
<
IdxBizPvHealthLevel
>
levelListQy
=
idxBizPvHealthLevelMapper
.
selectList
(
new
LambdaQueryWrapper
<
IdxBizPvHealthLevel
>().
eq
(
IdxBizPvHealthLevel:
:
getAnalysisObjType
,
"片区"
).
last
(
"limit 4"
));
List
<
IdxBizPvHealthLevel
>
levelListQy
=
idxBizPvHealthLevelMapper
.
selectList
(
new
LambdaQueryWrapper
<
IdxBizPvHealthLevel
>().
eq
(
IdxBizPvHealthLevel:
:
getAnalysisObjType
,
"片区"
).
last
(
"limit 4"
));
List
<
PvHealthIndex
>
fanHealthIndicesQy
=
pvHealthIndex
Mapper
.
getInfoListByGroupByQyPv
(
startTime
,
"pv_health_index_moment"
,
"场站"
);
List
<
PvHealthIndex
>
fanHealthIndicesQy
=
pvHealthIndex
Service
.
getInfoListByGroupByQyPv
(
startTime
,
"pv_health_index_moment"
,
"场站"
);
saveBatchPv
(
fanHealthIndicesQy
,
"pv_health_index_hour"
,
recDate
,
WarningPeriodEnum
.
HOUR
.
getName
(),
levelListQy
);
saveBatchPv
(
fanHealthIndicesQy
,
"pv_health_index_hour"
,
recDate
,
WarningPeriodEnum
.
HOUR
.
getName
(),
levelListQy
);
// 全域【所有 / 全国】
// 全域【所有 / 全国】
List
<
IdxBizPvHealthLevel
>
levelListQg
=
idxBizPvHealthLevelMapper
.
selectList
(
new
LambdaQueryWrapper
<
IdxBizPvHealthLevel
>().
eq
(
IdxBizPvHealthLevel:
:
getAnalysisObjType
,
"全域"
).
last
(
"limit 4"
));
List
<
IdxBizPvHealthLevel
>
levelListQg
=
idxBizPvHealthLevelMapper
.
selectList
(
new
LambdaQueryWrapper
<
IdxBizPvHealthLevel
>().
eq
(
IdxBizPvHealthLevel:
:
getAnalysisObjType
,
"全域"
).
last
(
"limit 4"
));
List
<
PvHealthIndex
>
fanHealthIndicesQg
=
pvHealthIndex
Mapper
.
getInfoListByGroupByQgPv
(
startTime
,
"pv_health_index_moment"
,
"片区"
);
List
<
PvHealthIndex
>
fanHealthIndicesQg
=
pvHealthIndex
Service
.
getInfoListByGroupByQgPv
(
startTime
,
"pv_health_index_moment"
,
"片区"
);
saveBatchPv
(
fanHealthIndicesQg
,
"pv_health_index_hour"
,
recDate
,
WarningPeriodEnum
.
HOUR
.
getName
(),
levelListQg
);
saveBatchPv
(
fanHealthIndicesQg
,
"pv_health_index_hour"
,
recDate
,
WarningPeriodEnum
.
HOUR
.
getName
(),
levelListQg
);
//预警生成
//预警生成
...
@@ -335,23 +305,23 @@ public class TdengineTimeServiceImpl {
...
@@ -335,23 +305,23 @@ public class TdengineTimeServiceImpl {
saveBatchPv
(
fanHealthIndices
,
"pv_health_index_day"
,
recDate
,
WarningPeriodEnum
.
DAY
.
getName
(),
levelList
);
saveBatchPv
(
fanHealthIndices
,
"pv_health_index_day"
,
recDate
,
WarningPeriodEnum
.
DAY
.
getName
(),
levelList
);
// 设备
// 设备
List
<
IdxBizPvHealthLevel
>
levelListSb
=
idxBizPvHealthLevelMapper
.
selectList
(
new
LambdaQueryWrapper
<
IdxBizPvHealthLevel
>().
eq
(
IdxBizPvHealthLevel:
:
getAnalysisObjType
,
"设备"
).
last
(
"limit 4"
));
List
<
IdxBizPvHealthLevel
>
levelListSb
=
idxBizPvHealthLevelMapper
.
selectList
(
new
LambdaQueryWrapper
<
IdxBizPvHealthLevel
>().
eq
(
IdxBizPvHealthLevel:
:
getAnalysisObjType
,
"设备"
).
last
(
"limit 4"
));
List
<
PvHealthIndex
>
fanHealthIndicesSb
=
pvHealthIndex
Mapper
.
getInfoListByGroupBySbPv
(
startTime
,
"pv_health_index_hour"
,
"测点"
);
List
<
PvHealthIndex
>
fanHealthIndicesSb
=
pvHealthIndex
Service
.
getInfoListByGroupBySbPv
(
startTime
,
"pv_health_index_hour"
,
"测点"
);
saveBatchPv
(
fanHealthIndicesSb
,
"pv_health_index_day"
,
recDate
,
WarningPeriodEnum
.
DAY
.
getName
(),
levelListSb
);
saveBatchPv
(
fanHealthIndicesSb
,
"pv_health_index_day"
,
recDate
,
WarningPeriodEnum
.
DAY
.
getName
(),
levelListSb
);
// 子阵
// 子阵
List
<
IdxBizPvHealthLevel
>
levelListZz
=
idxBizPvHealthLevelMapper
.
selectList
(
new
LambdaQueryWrapper
<
IdxBizPvHealthLevel
>().
eq
(
IdxBizPvHealthLevel:
:
getAnalysisObjType
,
"子阵"
).
last
(
"limit 4"
));
List
<
IdxBizPvHealthLevel
>
levelListZz
=
idxBizPvHealthLevelMapper
.
selectList
(
new
LambdaQueryWrapper
<
IdxBizPvHealthLevel
>().
eq
(
IdxBizPvHealthLevel:
:
getAnalysisObjType
,
"子阵"
).
last
(
"limit 4"
));
List
<
PvHealthIndex
>
fanHealthIndicesZz
=
pvHealthIndex
Mapper
.
getInfoListByGroupByZzPv
(
startTime
,
"pv_health_index_hour"
,
"设备"
);
List
<
PvHealthIndex
>
fanHealthIndicesZz
=
pvHealthIndex
Service
.
getInfoListByGroupByZzPv
(
startTime
,
"pv_health_index_hour"
,
"设备"
);
saveBatchPv
(
fanHealthIndicesZz
,
"pv_health_index_day"
,
recDate
,
WarningPeriodEnum
.
DAY
.
getName
(),
levelListZz
);
saveBatchPv
(
fanHealthIndicesZz
,
"pv_health_index_day"
,
recDate
,
WarningPeriodEnum
.
DAY
.
getName
(),
levelListZz
);
// 场站
// 场站
List
<
IdxBizPvHealthLevel
>
levelListCz
=
idxBizPvHealthLevelMapper
.
selectList
(
new
LambdaQueryWrapper
<
IdxBizPvHealthLevel
>().
eq
(
IdxBizPvHealthLevel:
:
getAnalysisObjType
,
"场站"
).
last
(
"limit 4"
));
List
<
IdxBizPvHealthLevel
>
levelListCz
=
idxBizPvHealthLevelMapper
.
selectList
(
new
LambdaQueryWrapper
<
IdxBizPvHealthLevel
>().
eq
(
IdxBizPvHealthLevel:
:
getAnalysisObjType
,
"场站"
).
last
(
"limit 4"
));
List
<
PvHealthIndex
>
fanHealthIndicesCz
=
pvHealthIndex
Mapper
.
getInfoListByGroupByCzPv
(
startTime
,
"pv_health_index_hour"
,
"子阵"
);
List
<
PvHealthIndex
>
fanHealthIndicesCz
=
pvHealthIndex
Service
.
getInfoListByGroupByCzPv
(
startTime
,
"pv_health_index_hour"
,
"子阵"
);
saveBatchPv
(
fanHealthIndicesCz
,
"pv_health_index_day"
,
recDate
,
WarningPeriodEnum
.
DAY
.
getName
(),
levelListCz
);
saveBatchPv
(
fanHealthIndicesCz
,
"pv_health_index_day"
,
recDate
,
WarningPeriodEnum
.
DAY
.
getName
(),
levelListCz
);
// 片区
// 片区
List
<
IdxBizPvHealthLevel
>
levelListQy
=
idxBizPvHealthLevelMapper
.
selectList
(
new
LambdaQueryWrapper
<
IdxBizPvHealthLevel
>().
eq
(
IdxBizPvHealthLevel:
:
getAnalysisObjType
,
"片区"
).
last
(
"limit 4"
));
List
<
IdxBizPvHealthLevel
>
levelListQy
=
idxBizPvHealthLevelMapper
.
selectList
(
new
LambdaQueryWrapper
<
IdxBizPvHealthLevel
>().
eq
(
IdxBizPvHealthLevel:
:
getAnalysisObjType
,
"片区"
).
last
(
"limit 4"
));
List
<
PvHealthIndex
>
fanHealthIndicesQy
=
pvHealthIndex
Mapper
.
getInfoListByGroupByQyPv
(
startTime
,
"pv_health_index_hour"
,
"场站"
);
List
<
PvHealthIndex
>
fanHealthIndicesQy
=
pvHealthIndex
Service
.
getInfoListByGroupByQyPv
(
startTime
,
"pv_health_index_hour"
,
"场站"
);
saveBatchPv
(
fanHealthIndicesQy
,
"pv_health_index_day"
,
recDate
,
WarningPeriodEnum
.
DAY
.
getName
(),
levelListQy
);
saveBatchPv
(
fanHealthIndicesQy
,
"pv_health_index_day"
,
recDate
,
WarningPeriodEnum
.
DAY
.
getName
(),
levelListQy
);
// 全域【所有 / 全国】
// 全域【所有 / 全国】
List
<
IdxBizPvHealthLevel
>
levelListQg
=
idxBizPvHealthLevelMapper
.
selectList
(
new
LambdaQueryWrapper
<
IdxBizPvHealthLevel
>().
eq
(
IdxBizPvHealthLevel:
:
getAnalysisObjType
,
"全域"
).
last
(
"limit 4"
));
List
<
IdxBizPvHealthLevel
>
levelListQg
=
idxBizPvHealthLevelMapper
.
selectList
(
new
LambdaQueryWrapper
<
IdxBizPvHealthLevel
>().
eq
(
IdxBizPvHealthLevel:
:
getAnalysisObjType
,
"全域"
).
last
(
"limit 4"
));
List
<
PvHealthIndex
>
fanHealthIndicesQg
=
pvHealthIndex
Mapper
.
getInfoListByGroupByQgPv
(
startTime
,
"pv_health_index_hour"
,
"片区"
);
List
<
PvHealthIndex
>
fanHealthIndicesQg
=
pvHealthIndex
Service
.
getInfoListByGroupByQgPv
(
startTime
,
"pv_health_index_hour"
,
"片区"
);
saveBatchPv
(
fanHealthIndicesQg
,
"pv_health_index_day"
,
recDate
,
WarningPeriodEnum
.
DAY
.
getName
(),
levelListQg
);
saveBatchPv
(
fanHealthIndicesQg
,
"pv_health_index_day"
,
recDate
,
WarningPeriodEnum
.
DAY
.
getName
(),
levelListQg
);
//预警生成
//预警生成
...
@@ -392,4 +362,67 @@ public class TdengineTimeServiceImpl {
...
@@ -392,4 +362,67 @@ public class TdengineTimeServiceImpl {
}
}
}
}
}
}
public
void
insertMomentDataTest
(
String
startTime
)
throws
ParseException
{
//s 489分钟 为 8小时 + 19分钟
// 子系统
List
<
FanHealthIndex
>
fanHealthIndicesZxt
=
fanHealthIndexMapper
.
getInfoListByGroupByZxtFan
(
startTime
,
"fan_health_index_moment"
,
"测点"
);
List
<
FanHealthIndex
>
fanHealthIndicesNew
=
fanHealthIndexService
.
getInfoListByGroupByZxtFan
(
startTime
,
"fan_health_index_moment"
,
"测点"
);
print
(
"子系统"
,
fanHealthIndicesZxt
,
fanHealthIndicesNew
);
// 设备
List
<
FanHealthIndex
>
fanHealthIndicesSbNew
=
fanHealthIndexService
.
getInfoListByGroupBySbFan
(
startTime
,
"fan_health_index_moment"
,
"子系统"
);
List
<
FanHealthIndex
>
fanHealthIndicesSb
=
fanHealthIndexMapper
.
getInfoListByGroupBySbFan
(
startTime
,
"fan_health_index_moment"
,
"子系统"
);
print
(
"设备"
,
fanHealthIndicesSb
,
fanHealthIndicesSbNew
);
// 场站
List
<
FanHealthIndex
>
fanHealthIndicesCz
=
fanHealthIndexMapper
.
getInfoListByGroupByCzFan
(
startTime
,
"fan_health_index_moment"
,
"设备"
);
List
<
FanHealthIndex
>
fanHealthIndicesCzNew
=
fanHealthIndexService
.
getInfoListByGroupByCzFan
(
startTime
,
"fan_health_index_moment"
,
"设备"
);
print
(
"场站"
,
fanHealthIndicesCz
,
fanHealthIndicesCzNew
);
// 区域
List
<
FanHealthIndex
>
fanHealthIndicesQy
=
fanHealthIndexMapper
.
getInfoListByGroupByQyFan
(
startTime
,
"fan_health_index_moment"
,
"场站"
);
List
<
FanHealthIndex
>
fanHealthIndicesQyNew
=
fanHealthIndexService
.
getInfoListByGroupByQyFan
(
startTime
,
"fan_health_index_moment"
,
"场站"
);
print
(
"区域"
,
fanHealthIndicesQy
,
fanHealthIndicesQyNew
);
// 全域【所有 / 全国】
List
<
FanHealthIndex
>
fanHealthIndicesQg
=
fanHealthIndexMapper
.
getInfoListByGroupByQgFan
(
startTime
,
"fan_health_index_moment"
,
"片区"
);
List
<
FanHealthIndex
>
fanHealthIndicesQgNew
=
fanHealthIndexService
.
getInfoListByGroupByQgFan
(
startTime
,
"fan_health_index_moment"
,
"片区"
);
print
(
"全域"
,
fanHealthIndicesQg
,
fanHealthIndicesQgNew
);
}
public
void
insertMomentDataPvTest
(
String
startTime
)
throws
ParseException
{
// 设备
List
<
PvHealthIndex
>
fanHealthIndicesSb
=
pvHealthIndexMapper
.
getInfoListByGroupBySbPv
(
startTime
,
"pv_health_index_moment"
,
"测点"
);
List
<
PvHealthIndex
>
fanHealthIndicesSbNew
=
pvHealthIndexService
.
getInfoListByGroupBySbPv
(
startTime
,
"pv_health_index_moment"
,
"测点"
);
printPv
(
"设备"
,
fanHealthIndicesSb
,
fanHealthIndicesSbNew
);
// 子阵
List
<
PvHealthIndex
>
fanHealthIndicesZz
=
pvHealthIndexMapper
.
getInfoListByGroupByZzPv
(
startTime
,
"pv_health_index_moment"
,
"设备"
);
List
<
PvHealthIndex
>
fanHealthIndicesZzNew
=
pvHealthIndexService
.
getInfoListByGroupByZzPv
(
startTime
,
"pv_health_index_moment"
,
"设备"
);
printPv
(
"子阵"
,
fanHealthIndicesZz
,
fanHealthIndicesZzNew
);
// 场站
List
<
PvHealthIndex
>
fanHealthIndicesCz
=
pvHealthIndexMapper
.
getInfoListByGroupByCzPv
(
startTime
,
"pv_health_index_moment"
,
"子阵"
);
List
<
PvHealthIndex
>
fanHealthIndicesCzNew
=
pvHealthIndexService
.
getInfoListByGroupByCzPv
(
startTime
,
"pv_health_index_moment"
,
"子阵"
);
printPv
(
"场站"
,
fanHealthIndicesCz
,
fanHealthIndicesCzNew
);
// 片区
List
<
PvHealthIndex
>
fanHealthIndicesQy
=
pvHealthIndexMapper
.
getInfoListByGroupByQyPv
(
startTime
,
"pv_health_index_moment"
,
"场站"
);
List
<
PvHealthIndex
>
fanHealthIndicesQyNew
=
pvHealthIndexService
.
getInfoListByGroupByQyPv
(
startTime
,
"pv_health_index_moment"
,
"场站"
);
printPv
(
"片区"
,
fanHealthIndicesQy
,
fanHealthIndicesQyNew
);
// 全域【所有 / 全国】
List
<
PvHealthIndex
>
fanHealthIndicesQg
=
pvHealthIndexMapper
.
getInfoListByGroupByQgPv
(
startTime
,
"pv_health_index_moment"
,
"片区"
);
List
<
PvHealthIndex
>
fanHealthIndicesQgNew
=
pvHealthIndexService
.
getInfoListByGroupByQgPv
(
startTime
,
"pv_health_index_moment"
,
"片区"
);
printPv
(
"全域"
,
fanHealthIndicesQg
,
fanHealthIndicesQgNew
);
}
public
void
print
(
String
desc
,
List
<
FanHealthIndex
>
olds
,
List
<
FanHealthIndex
>
news
)
{
olds
.
sort
(
Comparator
.
comparing
(
FanHealthIndex:
:
getArea
).
thenComparing
(
FanHealthIndex:
:
getStation
).
thenComparing
(
FanHealthIndex:
:
getEquipmentName
).
thenComparing
(
FanHealthIndex:
:
getSubSystem
).
thenComparing
(
FanHealthIndex:
:
getPointName
));
news
.
sort
(
Comparator
.
comparing
(
FanHealthIndex:
:
getArea
).
thenComparing
(
FanHealthIndex:
:
getStation
).
thenComparing
(
FanHealthIndex:
:
getEquipmentName
).
thenComparing
(
FanHealthIndex:
:
getSubSystem
).
thenComparing
(
FanHealthIndex:
:
getPointName
));
log
.
info
(
"对比{} old => {}"
,
desc
,
olds
);
log
.
info
(
"对比{} news => {}"
,
desc
,
news
);
}
public
void
printPv
(
String
desc
,
List
<
PvHealthIndex
>
olds
,
List
<
PvHealthIndex
>
news
)
{
olds
.
sort
(
Comparator
.
comparing
(
PvHealthIndex:
:
getArea
).
thenComparing
(
PvHealthIndex:
:
getStation
).
thenComparing
(
PvHealthIndex:
:
getEquipmentName
).
thenComparing
(
PvHealthIndex:
:
getSubarray
).
thenComparing
(
PvHealthIndex:
:
getPointName
));
news
.
sort
(
Comparator
.
comparing
(
PvHealthIndex:
:
getArea
).
thenComparing
(
PvHealthIndex:
:
getStation
).
thenComparing
(
PvHealthIndex:
:
getEquipmentName
).
thenComparing
(
PvHealthIndex:
:
getSubarray
).
thenComparing
(
PvHealthIndex:
:
getPointName
));
log
.
info
(
"对比{} old => {}"
,
desc
,
olds
);
log
.
info
(
"对比{} news => {}"
,
desc
,
news
);
}
}
}
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