代码调整
This commit is contained in:
@@ -15,13 +15,10 @@ import com.njcn.influx.pojo.po.PowerQualityData;
|
|||||||
import com.njcn.influx.service.HaronicRatioService;
|
import com.njcn.influx.service.HaronicRatioService;
|
||||||
import com.njcn.influx.service.PowerQualityService;
|
import com.njcn.influx.service.PowerQualityService;
|
||||||
import lombok.RequiredArgsConstructor;
|
import lombok.RequiredArgsConstructor;
|
||||||
import lombok.SneakyThrows;
|
|
||||||
import org.springframework.beans.BeanUtils;
|
import org.springframework.beans.BeanUtils;
|
||||||
import org.springframework.stereotype.Service;
|
import org.springframework.stereotype.Service;
|
||||||
|
|
||||||
import java.time.Instant;
|
|
||||||
import java.time.ZoneId;
|
import java.time.ZoneId;
|
||||||
import java.time.format.DateTimeFormatter;
|
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.Objects;
|
import java.util.Objects;
|
||||||
|
|||||||
@@ -415,16 +415,16 @@ public class TerminalBaseServiceImpl extends ServiceImpl<LineMapper, Line> imple
|
|||||||
//监测点限值
|
//监测点限值
|
||||||
DictData scaleResult = dicDataFeignClient.getDicDataById(voltage.getScale()).getData();
|
DictData scaleResult = dicDataFeignClient.getDicDataById(voltage.getScale()).getData();
|
||||||
float scaTmp = Float.parseFloat(scaleResult.getValue());
|
float scaTmp = Float.parseFloat(scaleResult.getValue());
|
||||||
Overlimit overlimit = COverlimitUtil.globalAssemble(scaTmp,lineDetail.getDealCapacity(),lineDetail.getDevCapacity(),lineDetail.getShortCapacity(),1,1);
|
Overlimit overlimit = COverlimitUtil.globalAssemble(scaTmp, lineDetail.getDealCapacity(), lineDetail.getDevCapacity(), lineDetail.getShortCapacity(), 1, 1);
|
||||||
|
|
||||||
if(Objects.isNull(lineParam.getVoltageDev())){
|
if (Objects.isNull(lineParam.getVoltageDev())) {
|
||||||
overlimit.setVoltageDev(overlimit.getVoltageDev());
|
overlimit.setVoltageDev(overlimit.getVoltageDev());
|
||||||
}else {
|
} else {
|
||||||
overlimit.setVoltageDev(lineParam.getVoltageDev());
|
overlimit.setVoltageDev(lineParam.getVoltageDev());
|
||||||
}
|
}
|
||||||
if(Objects.isNull(lineParam.getUvoltageDev())){
|
if (Objects.isNull(lineParam.getUvoltageDev())) {
|
||||||
overlimit.setUvoltageDev(overlimit.getUvoltageDev());
|
overlimit.setUvoltageDev(overlimit.getUvoltageDev());
|
||||||
}else {
|
} else {
|
||||||
overlimit.setUvoltageDev(lineParam.getUvoltageDev());
|
overlimit.setUvoltageDev(lineParam.getUvoltageDev());
|
||||||
}
|
}
|
||||||
//Overlimit overlimit = new Overlimit(line.getId(), scaTmp, lineDetail.getShortCapacity(), lineDetail.getStandardCapacity(), lineDetail.getDealCapacity(), lineDetail.getDevCapacity());
|
//Overlimit overlimit = new Overlimit(line.getId(), scaTmp, lineDetail.getShortCapacity(), lineDetail.getStandardCapacity(), lineDetail.getDealCapacity(), lineDetail.getDevCapacity());
|
||||||
@@ -656,7 +656,7 @@ public class TerminalBaseServiceImpl extends ServiceImpl<LineMapper, Line> imple
|
|||||||
voltageMapper.updateById(voltage);
|
voltageMapper.updateById(voltage);
|
||||||
|
|
||||||
//如果电压等级变化重新计算母线下面监测点的限值
|
//如果电压等级变化重新计算母线下面监测点的限值
|
||||||
if(!voltageTem.getScale().equals(voltage.getScale())) {
|
if (!voltageTem.getScale().equals(voltage.getScale())) {
|
||||||
List<LineDetail> lineList = voltageMapper.getLineDetailByBusBarId(voltage.getId());
|
List<LineDetail> lineList = voltageMapper.getLineDetailByBusBarId(voltage.getId());
|
||||||
DictData dictData = dicDataFeignClient.getDicDataById(voltage.getScale()).getData();
|
DictData dictData = dicDataFeignClient.getDicDataById(voltage.getScale()).getData();
|
||||||
float voltageLevel = Float.parseFloat(dictData.getValue());
|
float voltageLevel = Float.parseFloat(dictData.getValue());
|
||||||
@@ -739,15 +739,15 @@ public class TerminalBaseServiceImpl extends ServiceImpl<LineMapper, Line> imple
|
|||||||
float scaTmp = Float.parseFloat(scaleResult.getValue());
|
float scaTmp = Float.parseFloat(scaleResult.getValue());
|
||||||
|
|
||||||
//监测点限值
|
//监测点限值
|
||||||
Overlimit overlimit = COverlimitUtil.globalAssemble(scaTmp,lineDetail.getDealCapacity(),lineDetail.getDevCapacity(),lineDetail.getShortCapacity(),1,1);
|
Overlimit overlimit = COverlimitUtil.globalAssemble(scaTmp, lineDetail.getDealCapacity(), lineDetail.getDevCapacity(), lineDetail.getShortCapacity(), 1, 1);
|
||||||
if(Objects.isNull(updateLineBO.getVoltageDev())){
|
if (Objects.isNull(updateLineBO.getVoltageDev())) {
|
||||||
overlimit.setVoltageDev(overlimit.getVoltageDev());
|
overlimit.setVoltageDev(overlimit.getVoltageDev());
|
||||||
}else {
|
} else {
|
||||||
overlimit.setVoltageDev(updateLineBO.getVoltageDev());
|
overlimit.setVoltageDev(updateLineBO.getVoltageDev());
|
||||||
}
|
}
|
||||||
if(Objects.isNull(updateLineBO.getUvoltageDev())){
|
if (Objects.isNull(updateLineBO.getUvoltageDev())) {
|
||||||
overlimit.setUvoltageDev(overlimit.getUvoltageDev());
|
overlimit.setUvoltageDev(overlimit.getUvoltageDev());
|
||||||
}else {
|
} else {
|
||||||
overlimit.setUvoltageDev(updateLineBO.getUvoltageDev());
|
overlimit.setUvoltageDev(updateLineBO.getUvoltageDev());
|
||||||
}
|
}
|
||||||
overlimit.setId(line.getId());
|
overlimit.setId(line.getId());
|
||||||
@@ -1735,6 +1735,12 @@ public class TerminalBaseServiceImpl extends ServiceImpl<LineMapper, Line> imple
|
|||||||
substation.setLng(oracleTerminalExcel.getLng());
|
substation.setLng(oracleTerminalExcel.getLng());
|
||||||
substation.setLat(oracleTerminalExcel.getLat());
|
substation.setLat(oracleTerminalExcel.getLat());
|
||||||
substationMapper.insert(substation);
|
substationMapper.insert(substation);
|
||||||
|
} else {
|
||||||
|
//避免漏掉oracle项目中变电站经纬度的更改
|
||||||
|
Substation substation = substationMapper.selectById(temp.getId());
|
||||||
|
substation.setLng(oracleTerminalExcel.getLng());
|
||||||
|
substation.setLat(oracleTerminalExcel.getLat());
|
||||||
|
substationMapper.updateById(substation);
|
||||||
}
|
}
|
||||||
//添加变电站索引
|
//添加变电站索引
|
||||||
pids.add(temp.getId());
|
pids.add(temp.getId());
|
||||||
@@ -1749,68 +1755,95 @@ public class TerminalBaseServiceImpl extends ServiceImpl<LineMapper, Line> imple
|
|||||||
String deviceName = oracleTerminalExcel.getDeviceName();
|
String deviceName = oracleTerminalExcel.getDeviceName();
|
||||||
temp = queryLine(lineLambdaQueryWrapper, deviceName, pids.get(LineBaseEnum.SUB_LEVEL.getCode()), LineBaseEnum.DEVICE_LEVEL.getCode(), DataStateEnum.ENABLE.getCode());
|
temp = queryLine(lineLambdaQueryWrapper, deviceName, pids.get(LineBaseEnum.SUB_LEVEL.getCode()), LineBaseEnum.DEVICE_LEVEL.getCode(), DataStateEnum.ENABLE.getCode());
|
||||||
if (Objects.isNull(temp)) {
|
if (Objects.isNull(temp)) {
|
||||||
temp = assembleLine(deviceName, LineBaseEnum.DEVICE_LEVEL.getCode(), pids.get(LineBaseEnum.SUB_LEVEL.getCode()), pids);
|
//判断是否因为改了终端名称导致没有查到数据
|
||||||
this.baseMapper.insert(temp);
|
LambdaQueryWrapper<DeviceBak> deviceBakLambdaQueryWrapper = new LambdaQueryWrapper<>();
|
||||||
List<Device> existIp = deviceMapper.getDeviceBySubId(pids.get(LineBaseEnum.SUB_LEVEL.getCode()), oracleTerminalExcel.getIp(), oracleTerminalExcel.getPort(), null);
|
deviceBakLambdaQueryWrapper.eq(DeviceBak::getDevId, oracleTerminalExcel.getDeviceId());
|
||||||
if (CollectionUtil.isNotEmpty(existIp)) {
|
List<DeviceBak> deviceBaks = deviceBakService.list(deviceBakLambdaQueryWrapper);
|
||||||
Device device = existIp.get(0);
|
List<String> devIds = deviceBaks.stream().map(DeviceBak::getId).collect(Collectors.toList());
|
||||||
if (!device.getId().equalsIgnoreCase(temp.getId())) {
|
LambdaQueryWrapper<Line> devLambda = new LambdaQueryWrapper<>();
|
||||||
oracleTerminalExcelMsg.add(assembleMsg(oracleTerminalExcel, "IP地址:" + oracleTerminalExcel.getIp() + "已存在"));
|
devLambda.in(Line::getId, devIds)
|
||||||
|
.orderByAsc(Line::getCreateTime)
|
||||||
|
.eq(Line::getState, DataStateEnum.ENABLE.getCode());
|
||||||
|
List<Line> devList = lineMapper.selectList(devLambda);
|
||||||
|
if (CollectionUtil.isEmpty(deviceBaks) || CollectionUtil.isEmpty(devList)) {
|
||||||
|
temp = assembleLine(deviceName, LineBaseEnum.DEVICE_LEVEL.getCode(), pids.get(LineBaseEnum.SUB_LEVEL.getCode()), pids);
|
||||||
|
this.baseMapper.insert(temp);
|
||||||
|
List<Device> existIp = deviceMapper.getDeviceBySubId(pids.get(LineBaseEnum.SUB_LEVEL.getCode()), oracleTerminalExcel.getIp(), oracleTerminalExcel.getPort(), null);
|
||||||
|
if (CollectionUtil.isNotEmpty(existIp)) {
|
||||||
|
Device device = existIp.get(0);
|
||||||
|
if (!device.getId().equalsIgnoreCase(temp.getId())) {
|
||||||
|
oracleTerminalExcelMsg.add(assembleMsg(oracleTerminalExcel, "IP地址:" + oracleTerminalExcel.getIp() + "已存在"));
|
||||||
|
//删除刚刚新增装置信息
|
||||||
|
this.baseMapper.deleteById(temp.getId());
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
//处理终端厂家
|
||||||
|
DictData manufacturer = dicDataFeignClient.getDicDataByName(oracleTerminalExcel.getManufacturer()).getData();
|
||||||
|
if (Objects.isNull(manufacturer)) {
|
||||||
|
//在终端厂家字典内新增一条记录
|
||||||
|
manufacturer = dicDataFeignClient.addDicData(DicDataTypeEnum.DEV_MANUFACTURER.getName(), oracleTerminalExcel.getManufacturer()).getData();
|
||||||
|
}
|
||||||
|
Device device = new Device();
|
||||||
|
BeanUtils.copyProperties(oracleTerminalExcel, device);
|
||||||
|
device.setId(temp.getId());
|
||||||
|
device.setManufacturer(manufacturer.getId());
|
||||||
|
device.setIp(oracleTerminalExcel.getIp());
|
||||||
|
//处理前置ID
|
||||||
|
Node node = nodeService.getNodeByNodeName(oracleTerminalExcel.getNodeName());
|
||||||
|
if (Objects.isNull(node)) {
|
||||||
|
oracleTerminalExcelMsg.add(assembleMsg(oracleTerminalExcel, "前置名:" + oracleTerminalExcel.getNodeName() + "不存在"));
|
||||||
//删除刚刚新增装置信息
|
//删除刚刚新增装置信息
|
||||||
this.baseMapper.deleteById(temp.getId());
|
this.baseMapper.deleteById(temp.getId());
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
device.setNodeId(node.getId());
|
||||||
|
String oracleDevType = oracleTerminalExcel.getDevType().toUpperCase();
|
||||||
|
String frontType = getComType(oracleDevType);
|
||||||
|
if (StringUtils.isBlank(frontType)) {
|
||||||
|
oracleTerminalExcelMsg.add(assembleMsg(oracleTerminalExcel, "前置类型不存在"));
|
||||||
|
//删除刚刚新增装置信息
|
||||||
|
this.baseMapper.deleteById(temp.getId());
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
//处理前置类型
|
||||||
|
DictData frontTypeDicData = dicDataFeignClient.getDicDataByNameAndTypeName(DicDataTypeEnum.FRONT_TYPE.getName(), frontType).getData();
|
||||||
|
if (Objects.isNull(frontTypeDicData)) {
|
||||||
|
//在通讯类型字典内新增一条记录
|
||||||
|
frontTypeDicData = dicDataFeignClient.addDicData(DicDataTypeEnum.FRONT_TYPE.getName(), frontType).getData();
|
||||||
|
}
|
||||||
|
device.setFrontType(frontTypeDicData.getId());
|
||||||
|
String devType = oracleDevType.replace("_" + frontType, "");
|
||||||
|
//处理终端类型
|
||||||
|
DictData devTypeDicData = dicDataFeignClient.getDicDataByName(devType).getData();
|
||||||
|
if (Objects.isNull(devTypeDicData)) {
|
||||||
|
//在终端类型字典内新增一条记录
|
||||||
|
devTypeDicData = dicDataFeignClient.addDicData(DicDataTypeEnum.DEV_TYPE.getName(), devType).getData();
|
||||||
|
}
|
||||||
|
device.setDevType(devTypeDicData.getId());
|
||||||
|
deviceMapper.insert(device);
|
||||||
|
//插入新旧终端ID中间表
|
||||||
|
DeviceBak deviceBak = new DeviceBak();
|
||||||
|
deviceBak.setId(temp.getId());
|
||||||
|
deviceBak.setDevId(oracleTerminalExcel.getDeviceId());
|
||||||
|
deviceBakService.saveOrUpdate(deviceBak);
|
||||||
|
} else {
|
||||||
|
if (CollectionUtil.isNotEmpty(devList)) {
|
||||||
|
//仅保留最早创建的记录
|
||||||
|
List<String> ids = new ArrayList<>();
|
||||||
|
if (devList.size() > 2) {
|
||||||
|
for (int i = 1; i < devList.size(); i++) {
|
||||||
|
ids.add(devList.get(i).getId());
|
||||||
|
}
|
||||||
|
//删除错误关系和错误数据,避免丢失influx数据,保留最早的终端记录
|
||||||
|
lineMapper.deleteBatchIds(ids);
|
||||||
|
deviceMapper.deleteBatchIds(ids);
|
||||||
|
LambdaQueryWrapper<DeviceBak> deviceBakLambdaQueryWrapper1 = new LambdaQueryWrapper<>();
|
||||||
|
deviceBakLambdaQueryWrapper1.in(DeviceBak::getId, ids);
|
||||||
|
deviceBakService.remove(deviceBakLambdaQueryWrapper1);
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
//处理终端厂家
|
|
||||||
DictData manufacturer = dicDataFeignClient.getDicDataByName(oracleTerminalExcel.getManufacturer()).getData();
|
|
||||||
if (Objects.isNull(manufacturer)) {
|
|
||||||
//在终端厂家字典内新增一条记录
|
|
||||||
manufacturer = dicDataFeignClient.addDicData(DicDataTypeEnum.DEV_MANUFACTURER.getName(), oracleTerminalExcel.getManufacturer()).getData();
|
|
||||||
}
|
|
||||||
Device device = new Device();
|
|
||||||
BeanUtils.copyProperties(oracleTerminalExcel, device);
|
|
||||||
device.setId(temp.getId());
|
|
||||||
device.setManufacturer(manufacturer.getId());
|
|
||||||
device.setIp(oracleTerminalExcel.getIp());
|
|
||||||
//处理前置ID
|
|
||||||
Node node = nodeService.getNodeByNodeName(oracleTerminalExcel.getNodeName());
|
|
||||||
if (Objects.isNull(node)) {
|
|
||||||
oracleTerminalExcelMsg.add(assembleMsg(oracleTerminalExcel, "前置名:" + oracleTerminalExcel.getNodeName() + "不存在"));
|
|
||||||
//删除刚刚新增装置信息
|
|
||||||
this.baseMapper.deleteById(temp.getId());
|
|
||||||
continue;
|
|
||||||
}
|
|
||||||
device.setNodeId(node.getId());
|
|
||||||
String oracleDevType = oracleTerminalExcel.getDevType().toUpperCase();
|
|
||||||
String frontType = getComType(oracleDevType);
|
|
||||||
if (StringUtils.isBlank(frontType)) {
|
|
||||||
oracleTerminalExcelMsg.add(assembleMsg(oracleTerminalExcel, "前置类型不存在"));
|
|
||||||
//删除刚刚新增装置信息
|
|
||||||
this.baseMapper.deleteById(temp.getId());
|
|
||||||
continue;
|
|
||||||
}
|
|
||||||
//处理前置类型
|
|
||||||
DictData frontTypeDicData = dicDataFeignClient.getDicDataByNameAndTypeName(DicDataTypeEnum.FRONT_TYPE.getName(), frontType).getData();
|
|
||||||
if (Objects.isNull(frontTypeDicData)) {
|
|
||||||
//在通讯类型字典内新增一条记录
|
|
||||||
frontTypeDicData = dicDataFeignClient.addDicData(DicDataTypeEnum.FRONT_TYPE.getName(), frontType).getData();
|
|
||||||
}
|
|
||||||
device.setFrontType(frontTypeDicData.getId());
|
|
||||||
String devType = oracleDevType.replace("_" + frontType, "");
|
|
||||||
//处理终端类型
|
|
||||||
DictData devTypeDicData = dicDataFeignClient.getDicDataByName(devType).getData();
|
|
||||||
if (Objects.isNull(devTypeDicData)) {
|
|
||||||
//在终端类型字典内新增一条记录
|
|
||||||
devTypeDicData = dicDataFeignClient.addDicData(DicDataTypeEnum.DEV_TYPE.getName(), devType).getData();
|
|
||||||
}
|
|
||||||
device.setDevType(devTypeDicData.getId());
|
|
||||||
deviceMapper.insert(device);
|
|
||||||
//插入新旧终端ID中间表
|
|
||||||
DeviceBak deviceBak = new DeviceBak();
|
|
||||||
deviceBak.setId(temp.getId());
|
|
||||||
deviceBak.setDevId(oracleTerminalExcel.getDeviceId());
|
|
||||||
deviceBakService.removeById(oracleTerminalExcel.getDeviceId());
|
|
||||||
deviceBakService.saveOrUpdate(deviceBak);
|
|
||||||
}
|
}
|
||||||
//添加终端索引
|
//添加终端索引
|
||||||
pids.add(temp.getId());
|
pids.add(temp.getId());
|
||||||
@@ -1865,23 +1898,34 @@ public class TerminalBaseServiceImpl extends ServiceImpl<LineMapper, Line> imple
|
|||||||
if (Objects.nonNull(temp)) {
|
if (Objects.nonNull(temp)) {
|
||||||
oracleTerminalExcelMsg.add(assembleMsg(oracleTerminalExcel, "监测点名称重复,请联系管理员"));
|
oracleTerminalExcelMsg.add(assembleMsg(oracleTerminalExcel, "监测点名称重复,请联系管理员"));
|
||||||
} else {
|
} else {
|
||||||
temp = assembleLine(lineName, LineBaseEnum.LINE_LEVEL.getCode(), pids.get(LineBaseEnum.SUB_V_LEVEL.getCode()), pids);
|
//判断是否因为改了终端名称导致没有查到数据
|
||||||
this.baseMapper.insert(temp);
|
LambdaQueryWrapper<LineBak> lineBakLambdaQueryWrapper = new LambdaQueryWrapper<>();
|
||||||
LineDetail lineDetail = new LineDetail();
|
lineBakLambdaQueryWrapper.eq(LineBak::getLineId, oracleTerminalExcel.getId());
|
||||||
BeanUtils.copyProperties(oracleTerminalExcel, lineDetail);
|
List<LineBak> lineBaks = lineBakService.list(lineBakLambdaQueryWrapper);
|
||||||
lineDetail.setId(temp.getId());
|
List<String> lineIds = lineBaks.stream().map(LineBak::getId).collect(Collectors.toList());
|
||||||
//判断监测点号是否已被占用
|
LambdaQueryWrapper<Line> devLambda = new LambdaQueryWrapper<>();
|
||||||
List<LineDetail> lineDetails = lineDetailMapper.getLineDetail(pids.get(LineBaseEnum.DEVICE_LEVEL.getCode()), Stream.of(oracleTerminalExcel.getLineNum()).collect(Collectors.toList()));
|
devLambda.in(Line::getId, lineIds)
|
||||||
if (CollectionUtil.isNotEmpty(lineDetails)) {
|
.orderByAsc(Line::getCreateTime)
|
||||||
LineDetail lineDetail1 = lineDetails.get(0);
|
.eq(Line::getState, DataStateEnum.ENABLE.getCode());
|
||||||
if (lineDetail1.getId().equalsIgnoreCase(temp.getId())) {
|
List<Line> lineList = lineMapper.selectList(devLambda);
|
||||||
oracleTerminalExcelMsg.add(assembleMsg(oracleTerminalExcel, "监测点线路号:" + oracleTerminalExcel.getLineNum() + "已存在"));
|
if (CollectionUtil.isEmpty(lineBaks) || CollectionUtil.isEmpty(lineList)) {
|
||||||
//删除刚刚新增装置信息
|
temp = assembleLine(lineName, LineBaseEnum.LINE_LEVEL.getCode(), pids.get(LineBaseEnum.SUB_V_LEVEL.getCode()), pids);
|
||||||
this.baseMapper.deleteById(temp.getId());
|
this.baseMapper.insert(temp);
|
||||||
continue;
|
LineDetail lineDetail = new LineDetail();
|
||||||
|
BeanUtils.copyProperties(oracleTerminalExcel, lineDetail);
|
||||||
|
lineDetail.setId(temp.getId());
|
||||||
|
//判断监测点号是否已被占用
|
||||||
|
List<LineDetail> lineDetails = lineDetailMapper.getLineDetail(pids.get(LineBaseEnum.DEVICE_LEVEL.getCode()), Stream.of(oracleTerminalExcel.getLineNum()).collect(Collectors.toList()));
|
||||||
|
if (CollectionUtil.isNotEmpty(lineDetails)) {
|
||||||
|
LineDetail lineDetail1 = lineDetails.get(0);
|
||||||
|
if (lineDetail1.getId().equalsIgnoreCase(temp.getId())) {
|
||||||
|
oracleTerminalExcelMsg.add(assembleMsg(oracleTerminalExcel, "监测点线路号:" + oracleTerminalExcel.getLineNum() + "已存在"));
|
||||||
|
//删除刚刚新增装置信息
|
||||||
|
this.baseMapper.deleteById(temp.getId());
|
||||||
|
continue;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
//获取该监测点的限值数据
|
||||||
//获取该监测点的限值数据
|
|
||||||
// List<OverLimitExcel> overLimitList = overLimitExcels.stream()
|
// List<OverLimitExcel> overLimitList = overLimitExcels.stream()
|
||||||
// .filter(overLimitExcel -> overLimitExcel.getId().equals(oracleTerminalExcel.getId()))
|
// .filter(overLimitExcel -> overLimitExcel.getId().equals(oracleTerminalExcel.getId()))
|
||||||
// .collect(Collectors.toList());
|
// .collect(Collectors.toList());
|
||||||
@@ -1891,47 +1935,63 @@ public class TerminalBaseServiceImpl extends ServiceImpl<LineMapper, Line> imple
|
|||||||
// this.baseMapper.deleteById(temp.getId());
|
// this.baseMapper.deleteById(temp.getId());
|
||||||
// continue;
|
// continue;
|
||||||
// }
|
// }
|
||||||
lineDetail.setNum(oracleTerminalExcel.getLineNum());
|
lineDetail.setNum(oracleTerminalExcel.getLineNum());
|
||||||
//干扰源类型
|
//干扰源类型
|
||||||
DictData loadTypeDicData = dicDataFeignClient.getDicDataByName(oracleTerminalExcel.getLoadType()).getData();
|
DictData loadTypeDicData = dicDataFeignClient.getDicDataByName(oracleTerminalExcel.getLoadType()).getData();
|
||||||
if (Objects.isNull(loadTypeDicData)) {
|
if (Objects.isNull(loadTypeDicData)) {
|
||||||
//在电压等级内新增一条记录
|
|
||||||
loadTypeDicData = dicDataFeignClient.addDicData(DicDataTypeEnum.INTERFERENCE_SOURCE_TYPE.getName(), oracleTerminalExcel.getLoadType()).getData();
|
|
||||||
}
|
|
||||||
lineDetail.setLoadType(loadTypeDicData.getId());
|
|
||||||
//行业类型
|
|
||||||
DictData businessDicData = dicDataFeignClient.getDicDataByName(oracleTerminalExcel.getBusinessType()).getData();
|
|
||||||
if (Objects.isNull(businessDicData)) {
|
|
||||||
//在电压等级内新增一条记录
|
|
||||||
businessDicData = dicDataFeignClient.addDicData(DicDataTypeEnum.BUSINESS_TYPE.getName(), oracleTerminalExcel.getBusinessType()).getData();
|
|
||||||
}
|
|
||||||
lineDetail.setBusinessType(businessDicData.getId());
|
|
||||||
if (StringUtils.isBlank(oracleTerminalExcel.getMonitorId())) {
|
|
||||||
lineDetail.setMonitorFlag(0);
|
|
||||||
} else {
|
|
||||||
lineDetail.setMonitorFlag(1);
|
|
||||||
}
|
|
||||||
//终端等级,为空不处理,可以为空
|
|
||||||
if (StringUtils.isNotBlank(oracleTerminalExcel.getLineGrade())) {
|
|
||||||
DictData lineGradeDicData = dicDataFeignClient.getDicDataByName(oracleTerminalExcel.getLineGrade()).getData();
|
|
||||||
if (Objects.isNull(lineGradeDicData)) {
|
|
||||||
//在电压等级内新增一条记录
|
//在电压等级内新增一条记录
|
||||||
lineGradeDicData = dicDataFeignClient.addDicData(DicDataTypeEnum.DEV_LEVEL.getName(), oracleTerminalExcel.getLineGrade()).getData();
|
loadTypeDicData = dicDataFeignClient.addDicData(DicDataTypeEnum.INTERFERENCE_SOURCE_TYPE.getName(), oracleTerminalExcel.getLoadType()).getData();
|
||||||
|
}
|
||||||
|
lineDetail.setLoadType(loadTypeDicData.getId());
|
||||||
|
//行业类型
|
||||||
|
DictData businessDicData = dicDataFeignClient.getDicDataByName(oracleTerminalExcel.getBusinessType()).getData();
|
||||||
|
if (Objects.isNull(businessDicData)) {
|
||||||
|
//在电压等级内新增一条记录
|
||||||
|
businessDicData = dicDataFeignClient.addDicData(DicDataTypeEnum.BUSINESS_TYPE.getName(), oracleTerminalExcel.getBusinessType()).getData();
|
||||||
|
}
|
||||||
|
lineDetail.setBusinessType(businessDicData.getId());
|
||||||
|
if (StringUtils.isBlank(oracleTerminalExcel.getMonitorId())) {
|
||||||
|
lineDetail.setMonitorFlag(0);
|
||||||
|
} else {
|
||||||
|
lineDetail.setMonitorFlag(1);
|
||||||
|
}
|
||||||
|
//终端等级,为空不处理,可以为空
|
||||||
|
if (StringUtils.isNotBlank(oracleTerminalExcel.getLineGrade())) {
|
||||||
|
DictData lineGradeDicData = dicDataFeignClient.getDicDataByName(oracleTerminalExcel.getLineGrade()).getData();
|
||||||
|
if (Objects.isNull(lineGradeDicData)) {
|
||||||
|
//在电压等级内新增一条记录
|
||||||
|
lineGradeDicData = dicDataFeignClient.addDicData(DicDataTypeEnum.DEV_LEVEL.getName(), oracleTerminalExcel.getLineGrade()).getData();
|
||||||
|
}
|
||||||
|
lineDetail.setLineGrade(lineGradeDicData.getId());
|
||||||
}
|
}
|
||||||
lineDetail.setLineGrade(lineGradeDicData.getId());
|
|
||||||
}
|
|
||||||
|
|
||||||
lineDetailMapper.insert(lineDetail);
|
lineDetailMapper.insert(lineDetail);
|
||||||
LineBak lineBak = new LineBak();
|
LineBak lineBak = new LineBak();
|
||||||
lineBak.setId(temp.getId());
|
lineBak.setId(temp.getId());
|
||||||
lineBak.setLineId(oracleTerminalExcel.getId());
|
lineBak.setLineId(oracleTerminalExcel.getId());
|
||||||
lineBakService.removeById(oracleTerminalExcel.getId());
|
lineBakService.save(lineBak);
|
||||||
lineBakService.save(lineBak);
|
|
||||||
// OverLimitExcel overLimitExcel = overLimitList.get(0);
|
// OverLimitExcel overLimitExcel = overLimitList.get(0);
|
||||||
// Overlimit overlimit = new Overlimit();
|
// Overlimit overlimit = new Overlimit();
|
||||||
// BeanUtils.copyProperties(overLimitExcel, overlimit);
|
// BeanUtils.copyProperties(overLimitExcel, overlimit);
|
||||||
// overlimit.setId(temp.getId());
|
// overlimit.setId(temp.getId());
|
||||||
// overlimitMapper.insert(overlimit);
|
// overlimitMapper.insert(overlimit);
|
||||||
|
} else {
|
||||||
|
if (CollectionUtil.isNotEmpty(lineList)) {
|
||||||
|
//仅保留最早创建的记录
|
||||||
|
List<String> ids = new ArrayList<>();
|
||||||
|
if (lineList.size() > 2) {
|
||||||
|
for (int i = 1; i < lineList.size(); i++) {
|
||||||
|
ids.add(lineList.get(i).getId());
|
||||||
|
}
|
||||||
|
//删除错误关系和错误数据,避免丢失influx数据,保留最早的终端记录
|
||||||
|
lineMapper.deleteBatchIds(ids);
|
||||||
|
lineDetailMapper.deleteBatchIds(ids);
|
||||||
|
LambdaQueryWrapper<LineBak> lineBakLambdaQueryWrapper1 = new LambdaQueryWrapper<>();
|
||||||
|
lineBakLambdaQueryWrapper1.in(LineBak::getId, ids);
|
||||||
|
lineBakService.remove(lineBakLambdaQueryWrapper1);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,6 +1,7 @@
|
|||||||
package com.njcn;
|
package com.njcn;
|
||||||
|
|
||||||
import com.njcn.prepare.harmonic.pojo.mysql.po.line.RMpPassRateDPO;
|
import com.njcn.prepare.harmonic.pojo.mysql.po.line.RMpPassRateDPO;
|
||||||
|
import com.njcn.prepare.harmonic.service.mysql.line.DayDataService;
|
||||||
import com.njcn.prepare.harmonic.service.mysql.line.RMpPassRateDService;
|
import com.njcn.prepare.harmonic.service.mysql.line.RMpPassRateDService;
|
||||||
import com.njcn.prepare.harmonic.service.mysql.process.PmsTerminalDetectionService;
|
import com.njcn.prepare.harmonic.service.mysql.process.PmsTerminalDetectionService;
|
||||||
import com.njcn.process.pojo.po.PmsTerminalDetection;
|
import com.njcn.process.pojo.po.PmsTerminalDetection;
|
||||||
@@ -8,6 +9,7 @@ import lombok.SneakyThrows;
|
|||||||
import org.junit.Test;
|
import org.junit.Test;
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
|
|
||||||
|
import java.util.ArrayList;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -23,18 +25,14 @@ public class DemoTest extends BaseJunitTest {
|
|||||||
@Autowired
|
@Autowired
|
||||||
private PmsTerminalDetectionService pmsTerminalDetectionService;
|
private PmsTerminalDetectionService pmsTerminalDetectionService;
|
||||||
|
|
||||||
|
@Autowired
|
||||||
|
private DayDataService dayDataService;
|
||||||
|
|
||||||
|
|
||||||
@SneakyThrows
|
@SneakyThrows
|
||||||
@Test
|
@Test
|
||||||
public void test() {
|
public void test() {
|
||||||
//查询pms库
|
dayDataService.dataToDayHandler(new ArrayList<>(),"2022-01-01 00:00:00","2022-01-01 00:00:00");
|
||||||
List<RMpPassRateDPO> list1 = rMpPassRateDService.list();
|
|
||||||
|
|
||||||
//测试方法注解技术监督库
|
|
||||||
List<RMpPassRateDPO> list2 = rMpPassRateDService.getAll();
|
|
||||||
|
|
||||||
//测试service类注解技术监督库
|
|
||||||
List<PmsTerminalDetection> list = pmsTerminalDetectionService.list();
|
|
||||||
System.out.println("hello");
|
System.out.println("hello");
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user