Compare commits
10 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| d83f0746ac | |||
| f8e88b87d0 | |||
| 6df4074c59 | |||
| 2c3f04fc82 | |||
| cc52561395 | |||
|
|
a797381a7d | ||
| 99eff7d3d2 | |||
|
|
37c6e52281 | ||
|
|
533cf97495 | ||
|
|
1f96e18d65 |
@@ -3,10 +3,13 @@ package com.njcn.device.pms.pojo.po;
|
||||
import com.baomidou.mybatisplus.annotation.TableField;
|
||||
import com.baomidou.mybatisplus.annotation.TableId;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||
import com.njcn.db.bo.BaseEntity;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
|
||||
import java.time.LocalDate;
|
||||
|
||||
/**
|
||||
* <p>
|
||||
*
|
||||
@@ -72,16 +75,34 @@ public class Monitor extends BaseEntity {
|
||||
private String lineName;
|
||||
|
||||
/**
|
||||
* 监测线路ID
|
||||
* 监测母线
|
||||
*/
|
||||
private String lineId;
|
||||
|
||||
/**
|
||||
* 监测线路号
|
||||
*/
|
||||
private Integer lineNum;
|
||||
|
||||
/**
|
||||
* 投运日期
|
||||
*/
|
||||
@JsonFormat(pattern = "yyyy-MM-dd")
|
||||
private LocalDate putDate;
|
||||
|
||||
/**
|
||||
* 中台母线ID
|
||||
*/
|
||||
@TableField(exist = false)
|
||||
private String busId;
|
||||
|
||||
|
||||
/**
|
||||
* 中台母线ID
|
||||
*/
|
||||
@TableField(exist = false)
|
||||
private String midStation;
|
||||
|
||||
/**
|
||||
* 电压等级(字典)
|
||||
*/
|
||||
@@ -190,7 +211,6 @@ public class Monitor extends BaseEntity {
|
||||
* 监测终端接线方式(字典)
|
||||
*/
|
||||
private String terminalWiringMethod;
|
||||
|
||||
/**
|
||||
* 是否是上送国网监测点,0-否 1-是
|
||||
*/
|
||||
|
||||
@@ -263,7 +263,9 @@ public class MonitorServiceImpl extends ServiceImpl<MonitorMapper, Monitor> impl
|
||||
List<GeneratrixWire> generatrixWireList = generatrixWireMapper.selectList(new LambdaQueryWrapper<GeneratrixWire>().in(GeneratrixWire::getId, busIds));
|
||||
Map<String, GeneratrixWire> mapBus = generatrixWireList.stream().collect(Collectors.toMap(GeneratrixWire::getId, Function.identity()));
|
||||
|
||||
|
||||
List<String> powerIds = temList.stream().map(Monitor::getPowerrId).distinct().collect(Collectors.toList());
|
||||
List<StatationStat> statationStatList = statationStatMapper.selectList(new LambdaQueryWrapper<StatationStat>().in(StatationStat::getPowerId,powerIds));
|
||||
Map<String,StatationStat> statMap = statationStatList.stream().collect(Collectors.toMap(StatationStat::getPowerId,Function.identity()));
|
||||
|
||||
temList = temList.stream().peek(item -> {
|
||||
if (mapTerminal.containsKey(item.getTerminalId())) {
|
||||
@@ -271,7 +273,9 @@ public class MonitorServiceImpl extends ServiceImpl<MonitorMapper, Monitor> impl
|
||||
item.setDevIp(mapTerminal.get(item.getTerminalId()).getIp());
|
||||
}
|
||||
|
||||
|
||||
if (statMap.containsKey(item.getPowerrId())) {
|
||||
item.setMidStation(statMap.get(item.getPowerrId()).getMidStationId());
|
||||
}
|
||||
|
||||
if (mapBus.containsKey(item.getLineId())) {
|
||||
item.setBusId(mapBus.get(item.getLineId()).getMidBusId());
|
||||
@@ -1309,37 +1313,38 @@ public class MonitorServiceImpl extends ServiceImpl<MonitorMapper, Monitor> impl
|
||||
}
|
||||
|
||||
|
||||
// 初始化字典数据的通用方法
|
||||
private Map<String, DictData> initDictData(DicDataTypeEnum type) {
|
||||
return dicDataFeignClient.getDicDataByTypeCode(type.getCode()).getData()
|
||||
.stream().collect(Collectors.toMap(DictData::getName, Function.identity()));
|
||||
}
|
||||
|
||||
|
||||
private String dealData(List<OracleTerminalExcel> oracleTerminalExcelList) {
|
||||
List<OracleTerminalExcel.OracleTerminalExcelMsg> oracleTerminalExcelMsg = new ArrayList<>();
|
||||
|
||||
List<DeptDTO> allDept = deptFeignClient.getDeptDescendantIndexes(deptFeignClient.getRootDept().getData().getId(), Stream.of(0, 1, 2).collect(Collectors.toList())).getData();
|
||||
Map<String, DeptDTO> mapDept = allDept.stream().collect(Collectors.toMap(DeptDTO::getName, Function.identity()));
|
||||
|
||||
List<DictData> voltageLevelDic = dicDataFeignClient.getDicDataByTypeCode(DicDataTypeEnum.DEV_VOLTAGE.getCode()).getData();
|
||||
Map<String, DictData> voltageLevelMap = voltageLevelDic.stream().collect(Collectors.toMap(DictData::getName, Function.identity()));
|
||||
Map<String, DictData> voltageLevelMap = initDictData(DicDataTypeEnum.DEV_VOLTAGE);
|
||||
|
||||
//装置型号
|
||||
List<DictData> devTypelDic = dicDataFeignClient.getDicDataByTypeCode(DicDataTypeEnum.DEV_TYPE.getCode()).getData();
|
||||
Map<String, DictData> devTypelDicMap = devTypelDic.stream().collect(Collectors.toMap(DictData::getName, Function.identity()));
|
||||
|
||||
//装置类别
|
||||
DictData devCategoryDic = dicDataFeignClient.getDicDataByNameAndTypeName(DicDataTypeEnum.DEV_CATEGORY.getName(), DicDataEnum.Monitor_Terminals.getName()).getData();
|
||||
Map<String, DictData> devTypelDicMap = initDictData(DicDataTypeEnum.DEV_TYPE);
|
||||
|
||||
//装置状态
|
||||
List<DictData> devStatelDic = dicDataFeignClient.getDicDataByTypeCode(DicDataTypeEnum.DEV_STATUS.getCode()).getData();
|
||||
Map<String, DictData> devStateDicMap = devStatelDic.stream().collect(Collectors.toMap(DictData::getName, Function.identity()));
|
||||
Map<String, DictData> devStateDicMap = initDictData(DicDataTypeEnum.DEV_STATUS);
|
||||
|
||||
//监测点状态
|
||||
List<DictData> monitorStatelDic = dicDataFeignClient.getDicDataByTypeCode(DicDataTypeEnum.LINE_STATE.getCode()).getData();
|
||||
Map<String, DictData> monitorStateDicMap = monitorStatelDic.stream().collect(Collectors.toMap(DictData::getName, Function.identity()));
|
||||
Map<String, DictData> monitorStateDicMap = initDictData(DicDataTypeEnum.LINE_STATE);
|
||||
|
||||
//监测点标签
|
||||
List<DictData> objTypeList = dicDataFeignClient.getDicDataByTypeCode(DicDataTypeEnum.MONITORING_LABELS.getCode()).getData();
|
||||
Map<String, DictData> objTypeDicMap = objTypeList.stream().collect(Collectors.toMap(DictData::getName, Function.identity()));
|
||||
Map<String, DictData> objTypeDicMap = initDictData(DicDataTypeEnum.MONITORING_LABELS);
|
||||
|
||||
//装置厂家
|
||||
List<DictData> manList = dicDataFeignClient.getDicDataByTypeCode(DicDataTypeEnum.DEV_MANUFACTURER.getCode()).getData();
|
||||
Map<String, DictData> manDicMap = manList.stream().collect(Collectors.toMap(DictData::getName, Function.identity()));
|
||||
Map<String, DictData> manDicMap = initDictData(DicDataTypeEnum.DEV_MANUFACTURER);
|
||||
|
||||
//接线方式
|
||||
Map<String, DictData> wireListMap = initDictData(DicDataTypeEnum.DEV_CONNECT);
|
||||
|
||||
//装作等级
|
||||
DictData devGrade = dicDataFeignClient.getDicDataByNameAndTypeName(DicDataTypeEnum.DEV_GRADE.getName(), DicDataEnum.MOST_IMPORMENT.getName()).getData();
|
||||
@@ -1350,30 +1355,27 @@ public class MonitorServiceImpl extends ServiceImpl<MonitorMapper, Monitor> impl
|
||||
//监测点类型
|
||||
DictData monitorType = dicDataFeignClient.getDicDataByNameAndTypeName(DicDataTypeEnum.LINE_TYPE.getName(), DicDataEnum.Power_Supply_Point.getName()).getData();
|
||||
|
||||
//接线方式
|
||||
List<DictData> wireList = dicDataFeignClient.getDicDataByTypeCode(DicDataTypeEnum.DEV_CONNECT.getCode()).getData();
|
||||
Map<String, DictData> wireListMap = wireList.stream().collect(Collectors.toMap(DictData::getName, Function.identity()));
|
||||
|
||||
DictData potentialDic = dicDataFeignClient.getDicDataByCodeAndType(DicDataEnum.Cap_V.getCode(),DicDataTypeEnum.VOLTAGE_TRANSFORMER.getCode()).getData();
|
||||
|
||||
DictData neutralDic = dicDataFeignClient.getDicDataByNameAndTypeName(DicDataTypeEnum.Neutral_Point.getName(), DicDataEnum.Ground_Res.getName()).getData();
|
||||
//装置类别
|
||||
DictData devCategoryDic = dicDataFeignClient.getDicDataByNameAndTypeName(DicDataTypeEnum.DEV_CATEGORY.getName(), DicDataEnum.Monitor_Terminals.getName()).getData();
|
||||
|
||||
|
||||
List<DictData> businessType = dicDataFeignClient.getDicDataByTypeCode(DicDataTypeEnum.BUSINESS_TYPE.getCode()).getData();
|
||||
Map<String, DictData> businessDicMap = businessType.stream().collect(Collectors.toMap(DictData::getName, Function.identity()));
|
||||
|
||||
|
||||
//TODO 零时处理
|
||||
//对象类型
|
||||
List<SysDicTreePO> dicTree = dictTreeFeignClient.queryAll().getData();
|
||||
dicTree = dicTree.stream().filter(item->item.getCode()!="Device_Unit" && !item.getCode().contains("@")).collect(Collectors.toList());
|
||||
Map<String,SysDicTreePO> objTypeMap = dicTree.stream().collect(Collectors.toMap(SysDicTreePO::getName,Function.identity()));
|
||||
|
||||
|
||||
|
||||
for (OracleTerminalExcel oracleTerminalExcel : oracleTerminalExcelList) {
|
||||
|
||||
//单位
|
||||
if(oracleTerminalExcel.getGdName().equals("省检修")){
|
||||
if (oracleTerminalExcel.getGdName().equals("省检修")) {
|
||||
oracleTerminalExcel.setGdName("国网河北超高压公司本部");
|
||||
}else {
|
||||
oracleTerminalExcel.setGdName("国网"+oracleTerminalExcel.getGdName()+"本部");
|
||||
} else {
|
||||
oracleTerminalExcel.setGdName("国网" + oracleTerminalExcel.getGdName() + "本部");
|
||||
}
|
||||
|
||||
if (!mapDept.containsKey(oracleTerminalExcel.getGdName())) {
|
||||
@@ -1383,7 +1385,6 @@ public class MonitorServiceImpl extends ServiceImpl<MonitorMapper, Monitor> impl
|
||||
|
||||
//判断是否操作过该条记录
|
||||
LineBak lineBak = lineBakMapper.selectOne(new LambdaQueryWrapper<LineBak>().eq(LineBak::getLineId, oracleTerminalExcel.getId()));
|
||||
|
||||
DeviceBak deviceBak = deviceBakMapper.selectOne(new LambdaQueryWrapper<DeviceBak>().eq(DeviceBak::getDevId, oracleTerminalExcel.getDeviceId()));
|
||||
|
||||
|
||||
@@ -1452,14 +1453,6 @@ public class MonitorServiceImpl extends ServiceImpl<MonitorMapper, Monitor> impl
|
||||
continue;
|
||||
}
|
||||
|
||||
|
||||
/* if (devTypelDicMap.containsKey(oracleTerminalExcel.getDevType())) {
|
||||
pmsTerminalPO.setTerminalState(devTypelDicMap.get(oracleTerminalExcel.getDevType()).getId());
|
||||
} else {
|
||||
oracleTerminalExcelMsg.add(assembleMsg(oracleTerminalExcel, "字典终端状态不存在,请确认后重试"));
|
||||
continue;
|
||||
}*/
|
||||
|
||||
//终端状态
|
||||
String devState = null;
|
||||
switch (oracleTerminalExcel.getRunFlag()) {
|
||||
@@ -1509,16 +1502,10 @@ public class MonitorServiceImpl extends ServiceImpl<MonitorMapper, Monitor> impl
|
||||
deviceBakMapper.insert(deviceBakPO);
|
||||
terminalMapper.updateById(pmsTerminalPO);
|
||||
devId = pmsTerminal.getId();
|
||||
} else if (Objects.isNull(pmsTerminal)) {
|
||||
terminalMapper.deleteById(deviceBak.getId());
|
||||
pmsTerminalPO.setId(deviceBak.getId());
|
||||
terminalMapper.insert(pmsTerminalPO);
|
||||
devId = pmsTerminalPO.getId();
|
||||
} else {
|
||||
devId = pmsTerminal.getId();
|
||||
devId = deviceBak.getId();
|
||||
pmsTerminalPO.setId(devId);
|
||||
terminalMapper.updateById(pmsTerminalPO);
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
@@ -1530,8 +1517,6 @@ public class MonitorServiceImpl extends ServiceImpl<MonitorMapper, Monitor> impl
|
||||
GeneratrixWire generatrixWire = generatrixWireMapper.selectOne(generatrixWireLambdaQueryWrapper);
|
||||
|
||||
String lineId = null, lineName = null, genScale = null;
|
||||
|
||||
|
||||
GeneratrixWire generatrixWirePO = new GeneratrixWire();
|
||||
generatrixWirePO.setGeneratrixName(oracleTerminalExcel.getSubvName());
|
||||
generatrixWirePO.setStatus(DataStateEnum.ENABLE.getCode());
|
||||
@@ -1557,7 +1542,7 @@ public class MonitorServiceImpl extends ServiceImpl<MonitorMapper, Monitor> impl
|
||||
} else {
|
||||
generatrixWirePO.setId(generatrixWire.getId());
|
||||
generatrixWireMapper.updateById(generatrixWirePO);
|
||||
lineId = generatrixWire.getId();
|
||||
lineId = generatrixWirePO.getId();
|
||||
lineName = generatrixWirePO.getName();
|
||||
genScale = generatrixWirePO.getScale();
|
||||
}
|
||||
@@ -1566,11 +1551,8 @@ public class MonitorServiceImpl extends ServiceImpl<MonitorMapper, Monitor> impl
|
||||
LambdaQueryWrapper<Monitor> monitorLambdaQueryWrapper = new LambdaQueryWrapper<>();
|
||||
monitorLambdaQueryWrapper.eq(Monitor::getLineId, lineId)
|
||||
.eq(Monitor::getName, oracleTerminalExcel.getLineName());
|
||||
List<Monitor> monitorList = monitorMapper.selectList(monitorLambdaQueryWrapper);
|
||||
Monitor monitor = monitorMapper.selectOne(monitorLambdaQueryWrapper);
|
||||
|
||||
if(CollUtil.isNotEmpty(monitorList)) {
|
||||
|
||||
for (Monitor monitor : monitorList) {
|
||||
|
||||
//当前电站下面没有监测点,可以新增
|
||||
Monitor monitorPO = new Monitor();
|
||||
@@ -1591,6 +1573,8 @@ public class MonitorServiceImpl extends ServiceImpl<MonitorMapper, Monitor> impl
|
||||
one = "06";
|
||||
} else if (deptDTO.getName().contains("超高压")) {
|
||||
one = "07";
|
||||
} else if (deptDTO.getName().contains("雄安")) {
|
||||
one = "08";
|
||||
} else {
|
||||
one = "3.14159";
|
||||
}
|
||||
@@ -1599,7 +1583,7 @@ public class MonitorServiceImpl extends ServiceImpl<MonitorMapper, Monitor> impl
|
||||
|
||||
monitorPO.setMonitorId(monitorId + one + last);
|
||||
|
||||
|
||||
monitorPO.setLineNum(oracleTerminalExcel.getLineNum());
|
||||
monitorPO.setName(oracleTerminalExcel.getLineName());
|
||||
monitorPO.setPowerrName(stationName);
|
||||
monitorPO.setPowerrId(stationId);
|
||||
@@ -1636,7 +1620,7 @@ public class MonitorServiceImpl extends ServiceImpl<MonitorMapper, Monitor> impl
|
||||
oracleTerminalExcelMsg.add(assembleMsg(oracleTerminalExcel, "字典监测点运行状态不存在,请确认后重试"));
|
||||
continue;
|
||||
}
|
||||
|
||||
monitorPO.setPutDate(oracleTerminalExcel.getLoginTime());
|
||||
monitorPO.setMonitorType(monitorType.getId());
|
||||
monitorPO.setStandShortCapacity(oracleTerminalExcel.getStandardCapacity());
|
||||
monitorPO.setMinShortCircuitCapacity(oracleTerminalExcel.getShortCapacity());
|
||||
@@ -1656,7 +1640,7 @@ public class MonitorServiceImpl extends ServiceImpl<MonitorMapper, Monitor> impl
|
||||
monitorPO.setMonitorObjectName(oracleTerminalExcel.getObjName());
|
||||
|
||||
|
||||
if (oracleTerminalExcel.getLoadType().equals("电加热负荷") ||oracleTerminalExcel.getLoadType().equals("轧机") || oracleTerminalExcel.getLoadType().equals("其他非线性负荷")) {
|
||||
if (oracleTerminalExcel.getLoadType().equals("电加热负荷") || oracleTerminalExcel.getLoadType().equals("轧机") || oracleTerminalExcel.getLoadType().equals("其他非线性负荷")|| oracleTerminalExcel.getLoadType().equals("变频调速负荷")) {
|
||||
if (objTypeDicMap.containsKey("冶炼负荷")) {
|
||||
String objTypeId = objTypeDicMap.get("冶炼负荷").getId();
|
||||
monitorPO.setMonitorTag(objTypeId);
|
||||
@@ -1664,7 +1648,7 @@ public class MonitorServiceImpl extends ServiceImpl<MonitorMapper, Monitor> impl
|
||||
oracleTerminalExcelMsg.add(assembleMsg(oracleTerminalExcel, "冶炼负荷字典监测标签不存在,请确认后重试"));
|
||||
continue;
|
||||
}
|
||||
} else if (oracleTerminalExcel.getLoadType().equals("商业/市政/民用/电子通讯负荷")) {
|
||||
} else if (oracleTerminalExcel.getLoadType().equals("商业/市政/民用/电子通讯负荷")|| "电动汽车充电站".equals(oracleTerminalExcel.getLoadType()) ||"轨道交通".equals(oracleTerminalExcel.getLoadType())) {
|
||||
if (objTypeDicMap.containsKey("城市商业")) {
|
||||
String objTypeId = objTypeDicMap.get("城市商业").getId();
|
||||
monitorPO.setMonitorTag(objTypeId);
|
||||
@@ -1673,7 +1657,7 @@ public class MonitorServiceImpl extends ServiceImpl<MonitorMapper, Monitor> impl
|
||||
continue;
|
||||
}
|
||||
|
||||
} else if (oracleTerminalExcel.getLoadType().equals("半导体制造") || oracleTerminalExcel.getLoadType().equals("精密加工")) {
|
||||
} else if (oracleTerminalExcel.getLoadType().equals("半导体制造") || oracleTerminalExcel.getLoadType().equals("精密加工") || oracleTerminalExcel.getLoadType().equals("党政机关")||"敏感/重要/高危用户".equals(oracleTerminalExcel.getLoadType())) {
|
||||
if (objTypeDicMap.containsKey("敏感用户")) {
|
||||
String objTypeId = objTypeDicMap.get("敏感用户").getId();
|
||||
monitorPO.setMonitorTag(objTypeId);
|
||||
@@ -1687,10 +1671,10 @@ public class MonitorServiceImpl extends ServiceImpl<MonitorMapper, Monitor> impl
|
||||
String objTypeId = objTypeDicMap.get("主变高压侧").getId();
|
||||
monitorPO.setMonitorTag(objTypeId);
|
||||
} else {
|
||||
oracleTerminalExcelMsg.add(assembleMsg(oracleTerminalExcel, "字典监测标签不存在,请确认后重试"));
|
||||
oracleTerminalExcelMsg.add(assembleMsg(oracleTerminalExcel, "主变高压侧字典监测标签不存在,请确认后重试"));
|
||||
continue;
|
||||
}
|
||||
}else if(oracleTerminalExcel.getLoadType().equals("跨省计量关口")){
|
||||
} else if (oracleTerminalExcel.getLoadType().equals("跨省计量关口")) {
|
||||
if (objTypeDicMap.containsKey("跨省联络线")) {
|
||||
String objTypeId = objTypeDicMap.get("跨省联络线").getId();
|
||||
monitorPO.setMonitorTag(objTypeId);
|
||||
@@ -1699,7 +1683,7 @@ public class MonitorServiceImpl extends ServiceImpl<MonitorMapper, Monitor> impl
|
||||
continue;
|
||||
}
|
||||
|
||||
}else if(oracleTerminalExcel.getLoadType().equals("光伏电站")){
|
||||
} else if (oracleTerminalExcel.getLoadType().equals("光伏电站")) {
|
||||
if (objTypeDicMap.containsKey("光伏电站")) {
|
||||
String objTypeId = objTypeDicMap.get("光伏电站").getId();
|
||||
monitorPO.setMonitorTag(objTypeId);
|
||||
@@ -1708,42 +1692,55 @@ public class MonitorServiceImpl extends ServiceImpl<MonitorMapper, Monitor> impl
|
||||
continue;
|
||||
}
|
||||
|
||||
}else if (oracleTerminalExcel.getLoadType().equals("风电场")) {
|
||||
if (objTypeDicMap.containsKey("陆上风电")) {
|
||||
String objTypeId = objTypeDicMap.get("陆上风电").getId();
|
||||
monitorPO.setMonitorTag(objTypeId);
|
||||
} else {
|
||||
oracleTerminalExcelMsg.add(assembleMsg(oracleTerminalExcel, "风电场字典监测标签不存在,请确认后重试"));
|
||||
continue;
|
||||
}
|
||||
|
||||
}else if (oracleTerminalExcel.getLoadType().equals("其他发电厂")) {
|
||||
if (objTypeDicMap.containsKey("其他电源")) {
|
||||
String objTypeId = objTypeDicMap.get("其他电源").getId();
|
||||
monitorPO.setMonitorTag(objTypeId);
|
||||
} else {
|
||||
oracleTerminalExcelMsg.add(assembleMsg(oracleTerminalExcel, "其他电源监测标签不存在,请确认后重试"));
|
||||
continue;
|
||||
}
|
||||
|
||||
} else {
|
||||
if (objTypeDicMap.containsKey(oracleTerminalExcel.getLoadType())) {
|
||||
String objTypeId = objTypeDicMap.get(oracleTerminalExcel.getLoadType()).getId();
|
||||
monitorPO.setMonitorTag(objTypeId);
|
||||
} else {
|
||||
oracleTerminalExcelMsg.add(assembleMsg(oracleTerminalExcel, "字典监测标签不存在,请确认后重试"));
|
||||
oracleTerminalExcelMsg.add(assembleMsg(oracleTerminalExcel, oracleTerminalExcel.getLoadType()+"字典监测标签不存在,请确认后重试"));
|
||||
continue;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
//监测点对象类型
|
||||
|
||||
if (objTypeMap.containsKey(oracleTerminalExcel.getLoadType())) {
|
||||
String objTypeId = objTypeMap.get(oracleTerminalExcel.getLoadType()).getId();
|
||||
monitorPO.setObjType(objTypeId);
|
||||
}else if(oracleTerminalExcel.getLoadType().equals("电加热负荷")){
|
||||
} else if (oracleTerminalExcel.getLoadType().equals("电加热负荷")) {
|
||||
String objTypeId = objTypeMap.get("电加热负荷(含电弧炉、中频炉、电热炉、单/多晶硅生产设备)").getId();
|
||||
monitorPO.setObjType(objTypeId);
|
||||
} else if (oracleTerminalExcel.getLoadType().equals("变频调速负荷")) {
|
||||
String objTypeId = objTypeMap.get("变频调速负荷(变频电机、变频水泵等)").getId();
|
||||
monitorPO.setObjType(objTypeId);
|
||||
} else if (oracleTerminalExcel.getLoadType().equals("敏感/重要/高危用户")) {
|
||||
String objTypeId = objTypeMap.get("敏感/重要/高危用户").getId();
|
||||
monitorPO.setObjType(objTypeId);
|
||||
} else {
|
||||
oracleTerminalExcelMsg.add(assembleMsg(oracleTerminalExcel, oracleTerminalExcel.getLoadType() + "字典监测点对象类型不存在,请确认后重试"));
|
||||
continue;
|
||||
}
|
||||
|
||||
//行业类型
|
||||
/* if (businessDicMap.containsKey(oracleTerminalExcel.getBusinessType())) {
|
||||
String busTypeId = businessDicMap.get(oracleTerminalExcel.getBusinessType()).getId();
|
||||
monitorPO.setTradeCode(busTypeId);
|
||||
} else {
|
||||
oracleTerminalExcelMsg.add(assembleMsg(oracleTerminalExcel, oracleTerminalExcel.getBusinessType()+"字典行业类型不存在,请确认后重试"));
|
||||
continue;
|
||||
}*/
|
||||
|
||||
//TODO 监测点对象名称
|
||||
|
||||
|
||||
String wireMethod = "";
|
||||
switch (oracleTerminalExcel.getPtType()) {
|
||||
case 0:
|
||||
@@ -1784,7 +1781,6 @@ public class MonitorServiceImpl extends ServiceImpl<MonitorMapper, Monitor> impl
|
||||
monitorPO.setPowerFlag("102");
|
||||
}
|
||||
|
||||
|
||||
if (Objects.isNull(lineBak) && Objects.isNull(monitor)) {
|
||||
monitorPO.setIsUpToGrid(0);
|
||||
monitorMapper.insert(monitorPO);
|
||||
@@ -1801,23 +1797,23 @@ public class MonitorServiceImpl extends ServiceImpl<MonitorMapper, Monitor> impl
|
||||
lineBakPO.setId(monitorPO.getId());
|
||||
lineBakPO.setLineId(oracleTerminalExcel.getId());
|
||||
lineBakMapper.insert(lineBakPO);
|
||||
|
||||
} else {
|
||||
if (Objects.isNull(lineBak)) {
|
||||
|
||||
lineBakMapper.delete(new LambdaQueryWrapper<LineBak>().eq(LineBak::getId,monitor.getId()));
|
||||
LineBak lineBakPO = new LineBak();
|
||||
lineBakPO.setId(monitor.getId());
|
||||
lineBakPO.setLineId(oracleTerminalExcel.getId());
|
||||
System.out.println(oracleTerminalExcel.getId());
|
||||
lineBakMapper.insert(lineBakPO);
|
||||
monitorMapper.updateById(monitorPO);
|
||||
} else if (Objects.isNull(monitor)) {
|
||||
monitorPO.setIsUpToGrid(0);
|
||||
monitorMapper.deleteById(lineBak.getId());
|
||||
monitorPO.setId(lineBak.getId());
|
||||
monitorMapper.insert(monitorPO);
|
||||
} else {
|
||||
monitorPO.setId(lineBak.getId());
|
||||
monitorMapper.updateById(monitorPO);
|
||||
}
|
||||
|
||||
|
||||
Overlimit overlimit = COverlimitUtil.globalAssemble(Float.parseFloat(scale.getValue()), oracleTerminalExcel.getDealCapacity(), oracleTerminalExcel.getDevCapacity(), oracleTerminalExcel.getShortCapacity(), 0, 0);
|
||||
overlimit.setId(monitorPO.getId());
|
||||
Overlimit overlimitRes = overlimitMapper.selectById(monitorPO.getId());
|
||||
@@ -1828,13 +1824,10 @@ public class MonitorServiceImpl extends ServiceImpl<MonitorMapper, Monitor> impl
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
if (CollectionUtil.isNotEmpty(oracleTerminalExcelMsg)) {
|
||||
ExcelUtil.exportExcel("失败列表.xlsx", OracleTerminalExcel.OracleTerminalExcelMsg.class, oracleTerminalExcelMsg);
|
||||
return null;
|
||||
@@ -1845,11 +1838,11 @@ public class MonitorServiceImpl extends ServiceImpl<MonitorMapper, Monitor> impl
|
||||
|
||||
private String dealVoltageLevel(String voltage) {
|
||||
float scale = Float.parseFloat(voltage.substring(0, voltage.indexOf("kV")));
|
||||
if (scale < 500) {
|
||||
//if (scale < 500) {
|
||||
return "交流" + voltage;
|
||||
} else {
|
||||
return "直流" + voltage;
|
||||
}
|
||||
//} else {
|
||||
// return "直流" + voltage;
|
||||
//}
|
||||
|
||||
}
|
||||
|
||||
|
||||
@@ -211,8 +211,7 @@ public class TerminalBaseController extends BaseController {
|
||||
public HttpResult<Object> delTerminal(@RequestParam("id") String id) {
|
||||
String methodDescribe = getMethodDescribe("delTerminal");
|
||||
terminalBaseService.delTerminal(id);
|
||||
// 删除终端通知前置重启
|
||||
terminalBaseService.askRestartDevice(id,DeviceRebootType.DELETE_TERMINAL);
|
||||
|
||||
|
||||
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, null, methodDescribe);
|
||||
}
|
||||
|
||||
@@ -93,7 +93,6 @@ import java.util.stream.Stream;
|
||||
@Service
|
||||
@RequiredArgsConstructor
|
||||
public class TerminalBaseServiceImpl extends ServiceImpl<LineMapper, Line> implements TerminalBaseService {
|
||||
|
||||
private final DeviceMapper deviceMapper;
|
||||
private final SuperDataMapper superDataMapper;
|
||||
private final IPqsTerminalLogsService iPqsTerminalLogsService;
|
||||
@@ -303,6 +302,8 @@ public class TerminalBaseServiceImpl extends ServiceImpl<LineMapper, Line> imple
|
||||
processCountMap.put(processNum, processCount);
|
||||
}
|
||||
|
||||
}else{
|
||||
processCountMap = new HashMap<>();
|
||||
}
|
||||
|
||||
//获取数量最少的线程号
|
||||
@@ -1511,7 +1512,8 @@ public class TerminalBaseServiceImpl extends ServiceImpl<LineMapper, Line> imple
|
||||
LambdaQueryWrapper<DeptLine> lineLambdaQueryWrapper = new LambdaQueryWrapper<>();
|
||||
lineLambdaQueryWrapper.in(DeptLine::getLineId, lineIndexList);
|
||||
deptLineMapper.delete(lineLambdaQueryWrapper);
|
||||
|
||||
// 删除终端通知前置重启
|
||||
this.askRestartDevice(id,DeviceRebootType.DELETE_TERMINAL);
|
||||
|
||||
}
|
||||
|
||||
@@ -1532,7 +1534,9 @@ public class TerminalBaseServiceImpl extends ServiceImpl<LineMapper, Line> imple
|
||||
LambdaQueryWrapper<DeptLine> lineLambdaQueryWrapper = new LambdaQueryWrapper<>();
|
||||
lineLambdaQueryWrapper.in(DeptLine::getLineId, lineIndexList);
|
||||
deptLineMapper.delete(lineLambdaQueryWrapper);
|
||||
|
||||
//通知前置删除监测点
|
||||
String[] split = obj.getPids().split(",");
|
||||
this.askRestartDevice(split[4],DeviceRebootType.LEDGER_MODIFY);
|
||||
|
||||
}
|
||||
|
||||
@@ -1542,6 +1546,9 @@ public class TerminalBaseServiceImpl extends ServiceImpl<LineMapper, Line> imple
|
||||
lineDetailMapper.deleteById(obj.getId());
|
||||
overlimitMapper.deleteById(obj.getId());
|
||||
deptLineMapper.deleteById(obj.getId());
|
||||
//通知前置删除监测点
|
||||
String[] split = obj.getPids().split(",");
|
||||
this.askRestartDevice(split[4],DeviceRebootType.LEDGER_MODIFY);
|
||||
|
||||
} else {
|
||||
throw new BusinessException(CommonResponseEnum.FAIL);
|
||||
@@ -3582,6 +3589,7 @@ public class TerminalBaseServiceImpl extends ServiceImpl<LineMapper, Line> imple
|
||||
|
||||
|
||||
@Override
|
||||
@Async
|
||||
public void askRestartDevice(String devId, String deviceRebootType) {
|
||||
DeviceProcess one = deviceProcessService.lambdaQuery().eq(DeviceProcess::getId, devId).one();
|
||||
|
||||
|
||||
@@ -16,6 +16,10 @@ import com.njcn.harmonic.pojo.param.RMpBenchmarkLevelParam;
|
||||
import com.njcn.harmonic.pojo.po.RMpBenchmarkLevelM;
|
||||
import com.njcn.harmonic.pojo.vo.PwRMpBenchmarkLevelVO;
|
||||
import com.njcn.harmonic.service.distribution.PwRMpBenchmarkLevelMService;
|
||||
import com.njcn.system.api.DicDataFeignClient;
|
||||
import com.njcn.system.enums.DicDataEnum;
|
||||
import com.njcn.system.enums.DicDataTypeEnum;
|
||||
import com.njcn.system.pojo.po.DictData;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.apache.commons.lang.StringUtils;
|
||||
import org.springframework.beans.BeanUtils;
|
||||
@@ -26,6 +30,7 @@ import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.function.Function;
|
||||
import java.util.stream.Collectors;
|
||||
import java.util.stream.Stream;
|
||||
|
||||
/**
|
||||
* @author jianghf
|
||||
@@ -43,6 +48,8 @@ public class PwRMpBenchmarkLevelMServiceImpl extends ServiceImpl<PwRMpBenchmarkL
|
||||
|
||||
private final DistributionMonitorClient distributionMonitorClient;
|
||||
|
||||
private final DicDataFeignClient dicDataFeignClient;
|
||||
|
||||
|
||||
/***
|
||||
* 配网-全网基准水平
|
||||
@@ -71,6 +78,10 @@ public class PwRMpBenchmarkLevelMServiceImpl extends ServiceImpl<PwRMpBenchmarkL
|
||||
pwPmsMonitorParam.setOrgId(id); //单位id
|
||||
pwPmsMonitorParam.setVoltageLevels(voltageLevelParamList); //电压等级
|
||||
|
||||
DictData dictData = dicDataFeignClient.getDicDataByCodeAndType(DicDataEnum.THREE_LINE.getCode(), DicDataTypeEnum.LINE_SORT.getCode()).getData();
|
||||
pwPmsMonitorParam.setMonitorSort(Stream.of(dictData.getId()).collect(Collectors.toList()));
|
||||
|
||||
//临时调整为查询三类测点
|
||||
List<String> monitorIds = pmsGeneralDeviceInfoClient.getPwPmsMonitorIds(pwPmsMonitorParam).getData();
|
||||
if (CollUtil.isEmpty(monitorIds)) {
|
||||
return new Page<>();
|
||||
|
||||
@@ -15,6 +15,7 @@ import com.njcn.harmonic.pojo.po.RStatPwPermeabilityM;
|
||||
import com.njcn.harmonic.pojo.vo.RStatPwPermeabilityMVO;
|
||||
import com.njcn.harmonic.service.distribution.RStatPwPermeabilityMService;
|
||||
import com.njcn.system.api.DicDataFeignClient;
|
||||
import com.njcn.system.enums.DicDataEnum;
|
||||
import com.njcn.system.enums.DicDataTypeEnum;
|
||||
import com.njcn.system.pojo.po.DictData;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
@@ -24,6 +25,7 @@ import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.function.Function;
|
||||
import java.util.stream.Collectors;
|
||||
import java.util.stream.Stream;
|
||||
|
||||
/**
|
||||
* 各渗透率光伏台区基准水平
|
||||
@@ -68,6 +70,8 @@ public class RStatPwPermeabilityMServiceImpl extends ServiceImpl<RStatPwPermeabi
|
||||
//根据条件查询单位下面的所有配网监测点
|
||||
PwPmsMonitorParam pwPmsMonitorParam = new PwPmsMonitorParam();
|
||||
pwPmsMonitorParam.setOrgId(id); //单位id
|
||||
DictData dictData = dicDataFeignClient.getDicDataByCodeAndType(DicDataEnum.THREE_LINE.getCode(), DicDataTypeEnum.LINE_SORT.getCode()).getData();
|
||||
pwPmsMonitorParam.setMonitorSort(Stream.of(dictData.getId()).collect(Collectors.toList()));
|
||||
List<String> monitorIds = pmsGeneralDeviceInfoClient.getPwPmsMonitorIds(pwPmsMonitorParam).getData();
|
||||
if (CollUtil.isEmpty(monitorIds)) {
|
||||
return new Page<>();
|
||||
|
||||
@@ -93,7 +93,7 @@ public class RStatOrgMServiceImpl extends ServiceImpl<RStatOrgMMapper, RStatOrgM
|
||||
if(rStatOrgM.getHarmonicMeasurementAverage()!=null&&rStatOrgM.getEffectiveMeasurementAverage()!=null&&
|
||||
rStatOrgM.getHarmonicMeasurementAverage()!=0&&rStatOrgM.getEffectiveMeasurementAverage()!=0){
|
||||
Float harmonicMeasurementRatioAverage = Float.parseFloat(
|
||||
df.format(rStatOrgM.getHarmonicMeasurementAverage()*100.0 / rStatOrgM.getEffectiveMeasurementAverage()));
|
||||
df.format(rStatOrgM.getHarmonicMeasurementAverage() / rStatOrgM.getEffectiveMeasurementAverage()));
|
||||
rStatOrgVO.setHarmonicMeasurementRatioAverage(harmonicMeasurementRatioAverage);
|
||||
}else{
|
||||
rStatOrgVO.setHarmonicMeasurementRatioAverage(0.0f);
|
||||
@@ -101,7 +101,7 @@ public class RStatOrgMServiceImpl extends ServiceImpl<RStatOrgMMapper, RStatOrgM
|
||||
if(rStatOrgM.getHarmonicMeasurementAccrued()!=null&&rStatOrgM.getEffectiveMeasurementAccrued()!=null&&
|
||||
rStatOrgM.getHarmonicMeasurementAccrued()!=0&&rStatOrgM.getEffectiveMeasurementAccrued()!=0){
|
||||
Float harmonicMeasurementRatioAccrued = Float.parseFloat(
|
||||
df.format(rStatOrgM.getHarmonicMeasurementAccrued()*100.0 / rStatOrgM.getEffectiveMeasurementAccrued() ));
|
||||
df.format(rStatOrgM.getHarmonicMeasurementAccrued() / rStatOrgM.getEffectiveMeasurementAccrued() ));
|
||||
rStatOrgVO.setHarmonicMeasurementRatioAccrued(harmonicMeasurementRatioAccrued);
|
||||
}else{
|
||||
rStatOrgVO.setHarmonicMeasurementRatioAccrued(0.0f);
|
||||
|
||||
@@ -23,9 +23,13 @@ spring:
|
||||
ip: @service.server.url@
|
||||
server-addr: @nacos.url@
|
||||
namespace: @nacos.namespace@
|
||||
#username: @nacos.username@
|
||||
#password: @nacos.password@
|
||||
config:
|
||||
server-addr: @nacos.url@
|
||||
namespace: @nacos.namespace@
|
||||
#username: @nacos.username@
|
||||
#password: @nacos.password@
|
||||
file-extension: yaml
|
||||
shared-configs:
|
||||
- data-id: share-config.yaml
|
||||
|
||||
@@ -225,7 +225,7 @@ public class ExecutionCenter extends BaseController {
|
||||
@PostMapping("/orgPointExecutor")
|
||||
@Async("asyncExecutor")
|
||||
public void orgPointExecutor(@RequestBody BaseParam baseParam) {
|
||||
String methodDescribe = getMethodDescribe("OrgPointExecutor");
|
||||
String methodDescribe = getMethodDescribe("orgPointExecutor");
|
||||
//手动判断参数是否合法,
|
||||
CalculatedParam<DeptGetChildrenMoreDTO> calculatedParam = judgeExecuteParam(baseParam);
|
||||
// 测点索引
|
||||
|
||||
@@ -86,13 +86,6 @@ public class IntegrityServiceImpl extends MppServiceImpl<RStatIntegrityDMapper,
|
||||
RStatIntegrityD integrityDpo = new RStatIntegrityD();
|
||||
integrityDpo.setTimeId(LocalDateTimeUtil.parseDate(calculatedParam.getDataDate(), DatePattern.NORM_DATE_PATTERN));
|
||||
integrityDpo.setLineIndex(item.getPointId());
|
||||
if(Objects.isNull(item.getInterval())){
|
||||
System.out.println("遇到空指针异常+++++++++++++++++++++++++++++++++"+item);
|
||||
System.out.println("遇到空指针异常+++++++++++++++++++++++++++++++++"+item);
|
||||
System.out.println("遇到空指针异常+++++++++++++++++++++++++++++++++"+item);
|
||||
|
||||
System.out.println(item.getPointId());
|
||||
}
|
||||
integrityDpo.setDueTime(InfluxDBTableConstant.DAY_MINUTE / item.getInterval());
|
||||
integrityDpo.setRealTime(countList.stream()
|
||||
.filter(item2 -> Objects.equals(item.getPointId(), item2.getLineId()))
|
||||
|
||||
@@ -594,8 +594,19 @@ public class PollutionServiceImpl implements PollutionService {
|
||||
for (RStatDataVDPO dayV : list) {
|
||||
for (Overlimit overlimit : overLimitList) {
|
||||
if (Objects.equals(dayV.getLineId(),overlimit.getId())){
|
||||
double vlDev = Math.abs(dayV.getVlDev()/overlimit.getUvoltageDev());
|
||||
double vuDev = Math.abs(dayV.getVuDev()/overlimit.getVoltageDev());
|
||||
double vlDev;
|
||||
double vuDev;
|
||||
if(overlimit.getVoltageDev() == 0){
|
||||
vlDev = 0;
|
||||
}else {
|
||||
vlDev = Math.abs(dayV.getVlDev()/overlimit.getVoltageDev());
|
||||
}
|
||||
|
||||
if(overlimit.getUvoltageDev() == 0){
|
||||
vuDev = 0;
|
||||
}else {
|
||||
vuDev = Math.abs(dayV.getVuDev()/overlimit.getUvoltageDev());
|
||||
}
|
||||
data = Stream.of(vuDev,vlDev).collect(Collectors.toList());
|
||||
double result = data.stream().max(Comparator.comparing(Double::doubleValue)).get();
|
||||
publicDTO = new PublicDTO();
|
||||
|
||||
@@ -50,6 +50,7 @@ import com.njcn.system.pojo.po.DictData;
|
||||
import com.njcn.user.api.DeptFeignClient;
|
||||
import com.njcn.web.factory.PageFactory;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
|
||||
@@ -76,6 +77,7 @@ import static java.util.regex.Pattern.*;
|
||||
* @author xy
|
||||
* @since 2024-06-17
|
||||
*/
|
||||
@Slf4j
|
||||
@Service
|
||||
@RequiredArgsConstructor
|
||||
public class LineWarningServiceImpl extends MppServiceImpl<LineWarningMapper, LineWarning> implements ILineWarningService {
|
||||
@@ -374,11 +376,16 @@ public class LineWarningServiceImpl extends MppServiceImpl<LineWarningMapper, Li
|
||||
if (CollUtil.isNotEmpty(list)) {
|
||||
list.forEach(item -> {
|
||||
String time = item.getTime().format(DateTimeFormatter.ofPattern(DatePattern.NORM_DATE_PATTERN));
|
||||
double maxData = getFreqDev(param.getLineId()
|
||||
List<DataV> freqDevList = getFreqDev(param.getLineId()
|
||||
, time + " 00:00:00"
|
||||
, time + " 23:59:59"
|
||||
).get(0).getFreqDev();
|
||||
);
|
||||
if (CollUtil.isNotEmpty(freqDevList)) {
|
||||
double maxData = freqDevList.get(0).getFreqDev();
|
||||
channelEachData(item, maxData > 0 ? overlimit.getFreqDev() : -overlimit.getFreqDev(), "getFreqDev", result, DicDataEnum.FREQUENCY_DEV.getName(), timeInterval, maxData);
|
||||
} else {
|
||||
log.info("{}原始数据缺失", time);
|
||||
}
|
||||
});
|
||||
}
|
||||
}
|
||||
@@ -394,6 +401,7 @@ public class LineWarningServiceImpl extends MppServiceImpl<LineWarningMapper, Li
|
||||
, time + " 00:00:00"
|
||||
, time + " 23:59:59"
|
||||
);
|
||||
if (CollUtil.isNotEmpty(voltageList)) {
|
||||
List<Double> voltage = voltageList.stream().map(DataV::getVuDev).collect(Collectors.toList());
|
||||
if (Math.abs(voltage.get(0)) >= Math.abs(voltage.get(1))) {
|
||||
overLimit = overlimit.getUvoltageDev();
|
||||
@@ -403,6 +411,9 @@ public class LineWarningServiceImpl extends MppServiceImpl<LineWarningMapper, Li
|
||||
maxData = voltage.get(1);
|
||||
}
|
||||
channelEachData(item, overLimit, "getVoltageDev", result, DicDataEnum.VOLTAGE_DEV.getName(), timeInterval, maxData);
|
||||
} else {
|
||||
log.info("{}原始数据缺失", time);
|
||||
}
|
||||
});
|
||||
}
|
||||
}
|
||||
@@ -412,11 +423,16 @@ public class LineWarningServiceImpl extends MppServiceImpl<LineWarningMapper, Li
|
||||
if (CollUtil.isNotEmpty(list)) {
|
||||
list.forEach(item -> {
|
||||
String time = item.getTime().format(DateTimeFormatter.ofPattern(DatePattern.NORM_DATE_PATTERN));
|
||||
double maxData = getFlicker(param.getLineId()
|
||||
List<DataPlt> dataPltList = getFlicker(param.getLineId()
|
||||
, time + " 00:00:00"
|
||||
, time + " 23:59:59"
|
||||
).get(0).getPlt();
|
||||
);
|
||||
if (CollUtil.isNotEmpty(dataPltList)) {
|
||||
double maxData = dataPltList.get(0).getPlt();
|
||||
channelEachData(item, overlimit.getFlicker(), "getFlicker", result, DicDataEnum.FLICKER.getName(), timeInterval, maxData);
|
||||
} else {
|
||||
log.info("{}原始数据缺失", time);
|
||||
}
|
||||
});
|
||||
}
|
||||
}
|
||||
@@ -426,11 +442,16 @@ public class LineWarningServiceImpl extends MppServiceImpl<LineWarningMapper, Li
|
||||
if (CollUtil.isNotEmpty(list)) {
|
||||
list.forEach(item -> {
|
||||
String time = item.getTime().format(DateTimeFormatter.ofPattern(DatePattern.NORM_DATE_PATTERN));
|
||||
double maxData = getVThd(param.getLineId()
|
||||
List<DataV> dataVList = getVThd(param.getLineId()
|
||||
, time + " 00:00:00"
|
||||
, time + " 23:59:59"
|
||||
).get(0).getVThd();
|
||||
);
|
||||
if (CollUtil.isNotEmpty(dataVList)) {
|
||||
double maxData = dataVList.get(0).getVThd();
|
||||
channelEachData(item, overlimit.getUaberrance(), "getUaberrance", result, DicDataEnum.THD_V.getName(), timeInterval, maxData);
|
||||
} else {
|
||||
log.info("{}原始数据缺失", time);
|
||||
}
|
||||
});
|
||||
}
|
||||
}
|
||||
@@ -441,11 +462,16 @@ public class LineWarningServiceImpl extends MppServiceImpl<LineWarningMapper, Li
|
||||
if (CollUtil.isNotEmpty(list)) {
|
||||
list.forEach(item -> {
|
||||
String time = item.getTime().format(DateTimeFormatter.ofPattern(DatePattern.NORM_DATE_PATTERN));
|
||||
double maxData = getVThd(param.getLineId()
|
||||
List<DataV> dataVList = getVThd(param.getLineId()
|
||||
, time + " 00:00:00"
|
||||
, time + " 23:59:59"
|
||||
).get(0).getVThd();
|
||||
);
|
||||
if (CollUtil.isNotEmpty(dataVList)) {
|
||||
double maxData = dataVList.get(0).getVThd();
|
||||
channelEachData(item, overlimit.getUaberrance(), "getUaberrance", result, DicDataEnum.THD_V.getName(), timeInterval, maxData);
|
||||
} else {
|
||||
log.info("{}原始数据缺失", time);
|
||||
}
|
||||
});
|
||||
}
|
||||
//谐波电压含有率2~25次
|
||||
@@ -453,10 +479,15 @@ public class LineWarningServiceImpl extends MppServiceImpl<LineWarningMapper, Li
|
||||
if (CollUtil.isNotEmpty(list2)) {
|
||||
list2.forEach(item -> {
|
||||
String time = item.getTime().format(DateTimeFormatter.ofPattern(DatePattern.NORM_DATE_PATTERN));
|
||||
DataHarmRateV dataHarmRateV = getDataHarmRateV(param.getLineId()
|
||||
List<DataHarmRateV> dataHarmRateVList = getDataHarmRateV(param.getLineId()
|
||||
, time + " 00:00:00"
|
||||
, time + " 23:59:59").get(0);
|
||||
, time + " 23:59:59");
|
||||
if (CollUtil.isNotEmpty(dataHarmRateVList)) {
|
||||
DataHarmRateV dataHarmRateV = dataHarmRateVList.get(0);
|
||||
channelHarmonicData(dataHarmRateV, null, null, item, overlimit, result, "getUharm", DicDataEnum.HARMONIC_VOLTAGE.getName(), timeInterval, 2, 25);
|
||||
} else {
|
||||
log.info("{}原始数据缺失", time);
|
||||
}
|
||||
});
|
||||
}
|
||||
}
|
||||
@@ -466,10 +497,15 @@ public class LineWarningServiceImpl extends MppServiceImpl<LineWarningMapper, Li
|
||||
if (CollUtil.isNotEmpty(list)) {
|
||||
list.forEach(item -> {
|
||||
String time = item.getTime().format(DateTimeFormatter.ofPattern(DatePattern.NORM_DATE_PATTERN));
|
||||
DataI dataI = getDataI(param.getLineId()
|
||||
List<DataI> dataIList = getDataI(param.getLineId()
|
||||
, time + " 00:00:00"
|
||||
, time + " 23:59:59").get(0);
|
||||
, time + " 23:59:59");
|
||||
if (CollUtil.isNotEmpty(dataIList)) {
|
||||
DataI dataI = dataIList.get(0);
|
||||
channelHarmonicData(null, dataI, null, item, overlimit, result, "getIharm", DicDataEnum.HARMONIC_CURRENT.getName(), timeInterval, 2, 25);
|
||||
} else {
|
||||
log.info("{}原始数据缺失", time);
|
||||
}
|
||||
});
|
||||
}
|
||||
}
|
||||
@@ -479,10 +515,15 @@ public class LineWarningServiceImpl extends MppServiceImpl<LineWarningMapper, Li
|
||||
if (CollUtil.isNotEmpty(list)) {
|
||||
list.forEach(item -> {
|
||||
String time = item.getTime().format(DateTimeFormatter.ofPattern(DatePattern.NORM_DATE_PATTERN));
|
||||
DataInHarmV dataInHarmV = getDataInHarmV(param.getLineId()
|
||||
List<DataInHarmV> dataInHarmVList = getDataInHarmV(param.getLineId()
|
||||
, time + " 00:00:00"
|
||||
, time + " 23:59:59").get(0);
|
||||
, time + " 23:59:59");
|
||||
if (CollUtil.isNotEmpty(dataInHarmVList)) {
|
||||
DataInHarmV dataInHarmV = dataInHarmVList.get(0);
|
||||
channelHarmonicData(null, null, dataInHarmV, item, overlimit, result, "getInuharm", DicDataEnum.INTERHARMONIC_VOLTAGE.getName(), timeInterval, 1, 16);
|
||||
} else {
|
||||
log.info("{}原始数据缺失", time);
|
||||
}
|
||||
});
|
||||
}
|
||||
}
|
||||
@@ -492,11 +533,16 @@ public class LineWarningServiceImpl extends MppServiceImpl<LineWarningMapper, Li
|
||||
if (CollUtil.isNotEmpty(list)) {
|
||||
list.forEach(item -> {
|
||||
String time = item.getTime().format(DateTimeFormatter.ofPattern(DatePattern.NORM_DATE_PATTERN));
|
||||
double maxData = getUnbalance(param.getLineId()
|
||||
List<DataV> dataVList = getUnbalance(param.getLineId()
|
||||
, time + " 00:00:00"
|
||||
, time + " 23:59:59"
|
||||
).get(0).getVUnbalance();
|
||||
);
|
||||
if (CollUtil.isNotEmpty(dataVList)) {
|
||||
double maxData = dataVList.get(0).getVUnbalance();
|
||||
channelEachData(item, overlimit.getUbalance(), "getUbalance", result, DicDataEnum.PHASE_VOLTAGE.getName(), timeInterval, maxData);
|
||||
} else {
|
||||
log.info("{}原始数据缺失", time);
|
||||
}
|
||||
});
|
||||
}
|
||||
}
|
||||
@@ -506,11 +552,16 @@ public class LineWarningServiceImpl extends MppServiceImpl<LineWarningMapper, Li
|
||||
if (CollUtil.isNotEmpty(list)) {
|
||||
list.forEach(item -> {
|
||||
String time = item.getTime().format(DateTimeFormatter.ofPattern(DatePattern.NORM_DATE_PATTERN));
|
||||
double maxData = getINeg(param.getLineId()
|
||||
List<DataI> dataIList = getINeg(param.getLineId()
|
||||
, time + " 00:00:00"
|
||||
, time + " 23:59:59"
|
||||
).get(0).getINeg();
|
||||
);
|
||||
if (CollUtil.isNotEmpty(dataIList)) {
|
||||
double maxData = dataIList.get(0).getINeg();
|
||||
channelEachData(item, overlimit.getINeg(), "getINeg", result, DicDataEnum.NEG_CURRENT.getName(), timeInterval, maxData);
|
||||
} else {
|
||||
log.info("{}原始数据缺失", time);
|
||||
}
|
||||
});
|
||||
}
|
||||
}
|
||||
@@ -904,12 +955,12 @@ public class LineWarningServiceImpl extends MppServiceImpl<LineWarningMapper, Li
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取负序电压不平衡度-日最大值-最大值
|
||||
* 获取负序电压不平衡度-日最大值-CP95
|
||||
*/
|
||||
public List<DataV> getUnbalance(String lineIndex, String startTime, String endTime) {
|
||||
InfluxQueryWrapper influxQueryWrapper = new InfluxQueryWrapper(DataV.class);
|
||||
influxQueryWrapper.eq(DataV::getLineId, lineIndex)
|
||||
.eq(DataV::getValueType, InfluxDbSqlConstant.MAX)
|
||||
.eq(DataV::getValueType, InfluxDbSqlConstant.CP95)
|
||||
.eq(DataV::getPhaseType, "T")
|
||||
.max(DataV::getVUnbalance)
|
||||
.between(DataV::getTime, startTime, endTime);
|
||||
@@ -917,12 +968,12 @@ public class LineWarningServiceImpl extends MppServiceImpl<LineWarningMapper, Li
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取负序电流-日最大值-最大值
|
||||
* 获取负序电流-日最大值-CP95
|
||||
*/
|
||||
public List<DataI> getINeg(String lineIndex, String startTime, String endTime) {
|
||||
InfluxQueryWrapper influxQueryWrapper = new InfluxQueryWrapper(DataI.class);
|
||||
influxQueryWrapper.eq(DataI::getLineId, lineIndex)
|
||||
.eq(DataI::getValueType, InfluxDbSqlConstant.MAX)
|
||||
.eq(DataI::getValueType, InfluxDbSqlConstant.CP95)
|
||||
.eq(DataI::getPhaseType, "T")
|
||||
.max(DataI::getINeg)
|
||||
.between(DataI::getTime, startTime, endTime);
|
||||
|
||||
@@ -28,7 +28,7 @@ public class MeasurementTaskRunner implements TimerTaskRunner {
|
||||
baseParam.setFullChain(true);
|
||||
baseParam.setRepair(false);
|
||||
if(StrUtil.isBlank(date)){
|
||||
baseParam.setDataDate(DateUtil.yesterday().toString(DatePattern.NORM_DATETIME_PATTERN));
|
||||
baseParam.setDataDate(DateUtil.yesterday().toString(DatePattern.NORM_DATE_PATTERN));
|
||||
}else {
|
||||
baseParam.setDataDate(date);
|
||||
}
|
||||
|
||||
@@ -10,7 +10,7 @@ import lombok.RequiredArgsConstructor;
|
||||
import org.springframework.stereotype.Component;
|
||||
|
||||
/**
|
||||
* 用于pms往国网推送公共连接点数据定时任务
|
||||
* 主配网监测点
|
||||
*/
|
||||
@Component
|
||||
@RequiredArgsConstructor
|
||||
|
||||
Reference in New Issue
Block a user