Commit 3c6e903a authored by yangyang's avatar yangyang

碳银 - 逆变器告警接口对接

parent f2d6fdfb
...@@ -37,4 +37,7 @@ public class HealthIndexDTO { ...@@ -37,4 +37,7 @@ public class HealthIndexDTO {
private String analysisTime; private String analysisTime;
private String kks; private String kks;
private String orgCode; private String orgCode;
private String manufacturer;
private String deviceType;
} }
...@@ -58,14 +58,14 @@ public class FanHealthIndexServiceImpl implements IFanHealthIndexService { ...@@ -58,14 +58,14 @@ public class FanHealthIndexServiceImpl implements IFanHealthIndexService {
List<IdxBizFanWeight> idxBizFanWeights = idxBizFanWeightMapper.selectList(idxBizFanWeightQueryWrapper); 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, 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())); Map<String, List<FanHealthIndex>> fanHealthIndicesZxtMap = fanHealthIndicesZxt.stream().collect(Collectors.groupingBy(o -> o.getGatewayId() + o.getIndexAddress() + o.getStation() + o.getAnalysisObjType() + o.getAnalysisObjSeq() + o.getWeight() + o.getArea() + o.getSubSystem() + o.getEquipmentName() + o.getNumber() + o.getPointName() + o.getKks() + o.getOrgCode()));
List<FanHealthIndex> fanHealthIndicesZxtNews = new ArrayList<>(); List<FanHealthIndex> fanHealthIndicesZxtNews = new ArrayList<>();
fanHealthIndicesZxtMap.forEach((k, v) -> { fanHealthIndicesZxtMap.forEach((k, v) -> {
FanHealthIndex fanHealthIndex = new FanHealthIndex(); FanHealthIndex fanHealthIndex = new FanHealthIndex();
fanHealthIndex.setIndexAddress(v.get(0).getIndexAddress()); fanHealthIndex.setIndexAddress(v.get(0).getIndexAddress());
fanHealthIndex.setGatewayId(v.get(0).getGatewayId()); fanHealthIndex.setGatewayId(v.get(0).getGatewayId());
fanHealthIndex.setStation(v.get(0).getStation()); fanHealthIndex.setStation(v.get(0).getStation());
fanHealthIndex.setAnalysisObjType("测点"); fanHealthIndex.setAnalysisObjType(v.get(0).getAnalysisObjType());
fanHealthIndex.setAnalysisObjSeq(v.get(0).getAnalysisObjSeq()); fanHealthIndex.setAnalysisObjSeq(v.get(0).getAnalysisObjSeq());
fanHealthIndex.setWeight(v.get(0).getWeight()); fanHealthIndex.setWeight(v.get(0).getWeight());
fanHealthIndex.setArea(v.get(0).getArea()); fanHealthIndex.setArea(v.get(0).getArea());
...@@ -73,7 +73,7 @@ public class FanHealthIndexServiceImpl implements IFanHealthIndexService { ...@@ -73,7 +73,7 @@ public class FanHealthIndexServiceImpl implements IFanHealthIndexService {
fanHealthIndex.setNumber(v.get(0).getNumber()); fanHealthIndex.setNumber(v.get(0).getNumber());
fanHealthIndex.setEquipmentName(v.get(0).getEquipmentName()); fanHealthIndex.setEquipmentName(v.get(0).getEquipmentName());
fanHealthIndex.setPointName(v.get(0).getPointName()); fanHealthIndex.setPointName(v.get(0).getPointName());
fanHealthIndex.setKks(v.get(0).getNumber()); fanHealthIndex.setKks(v.get(0).getKks());
fanHealthIndex.setOrgCode(v.get(0).getOrgCode()); fanHealthIndex.setOrgCode(v.get(0).getOrgCode());
// 例如 子系统 = (测点1 * 测点1权重 + 测点2 * 测点2权重 + .... 测点n权重) / (测点1权重 + 测点2权重 + .... 测点n权重) // 例如 子系统 = (测点1 * 测点1权重 + 测点2 * 测点2权重 + .... 测点n权重) / (测点1权重 + 测点2权重 + .... 测点n权重)
// 但是测点是没有权重的,所以子系统无法计算加权平均 // 但是测点是没有权重的,所以子系统无法计算加权平均
......
...@@ -182,7 +182,7 @@ public class TdengineTimeServiceImpl { ...@@ -182,7 +182,7 @@ public class TdengineTimeServiceImpl {
String startTime = DateUtils.dateFormat(DateUtils.dateAddHours(new Date(), -32), DateUtils.DATE_TIME_PATTERN); String startTime = DateUtils.dateFormat(DateUtils.dateAddHours(new Date(), -32), DateUtils.DATE_TIME_PATTERN);
List<IdxBizFanHealthLevel> levelList = idxBizFanHealthLevelMapper.selectList(new LambdaQueryWrapper<IdxBizFanHealthLevel>().eq(IdxBizFanHealthLevel::getAnalysisObjType, "测点").last("limit 4")); List<IdxBizFanHealthLevel> levelList = idxBizFanHealthLevelMapper.selectList(new LambdaQueryWrapper<IdxBizFanHealthLevel>().eq(IdxBizFanHealthLevel::getAnalysisObjType, "测点").last("limit 4"));
List<FanHealthIndex> fanHealthIndices = fanHealthIndexMapper.getInfoListByGroupByCdFan(startTime, "fan_health_index_hour", "测点"); List<FanHealthIndex> fanHealthIndices = fanHealthIndexService.getInfoListByGroupByCdFan(startTime, "fan_health_index_hour", "测点");
saveBatchFan(fanHealthIndices, "fan_health_index_day", recDate, WarningPeriodEnum.DAY.getName(), levelList); saveBatchFan(fanHealthIndices, "fan_health_index_day", recDate, WarningPeriodEnum.DAY.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"));
......
...@@ -533,9 +533,12 @@ ...@@ -533,9 +533,12 @@
<select id="getInfoList" resultType="com.yeejoin.amos.boot.module.jxiop.biz.tdengine.FanHealthIndex"> <select id="getInfoList" resultType="com.yeejoin.amos.boot.module.jxiop.biz.tdengine.FanHealthIndex">
select select
index_address,
gateway_id , gateway_id ,
station, station,
analysis_obj_type, analysis_obj_type,
analysis_obj_seq,
weight,
area, area,
sub_system, sub_system,
equipment_name, equipment_name,
...@@ -543,6 +546,7 @@ ...@@ -543,6 +546,7 @@
anomaly, anomaly,
org_code, org_code,
health_index, health_index,
kks,
point_name point_name
from from
#{tableName} #{tableName}
......
...@@ -296,15 +296,21 @@ ...@@ -296,15 +296,21 @@
<select id="getInfoList" resultType="com.yeejoin.amos.boot.module.jxiop.biz.tdengine.PvHealthIndex"> <select id="getInfoList" resultType="com.yeejoin.amos.boot.module.jxiop.biz.tdengine.PvHealthIndex">
select select
index_address,
gateway_id , gateway_id ,
station, station,
analysis_obj_type, analysis_obj_type,
analysis_obj_seq,
weight,
area, area,
subarray, subarray,
manufacturer,
equipment_name, equipment_name,
anomaly, anomaly,
org_code, org_code,
health_index, health_index,
device_type,
kks,
point_name point_name
from from
#{tableName} #{tableName}
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment