pms国网上送代码提交
This commit is contained in:
@@ -239,6 +239,11 @@ public class Monitor extends BaseEntity {
|
||||
*/
|
||||
private Integer monitorUploadStatus;
|
||||
|
||||
/**
|
||||
* 0.未上送 1.已上送 2.取消上送 3.待重新上送(限值)
|
||||
*/
|
||||
private Integer monitorOverlimitStatus;
|
||||
|
||||
|
||||
/**
|
||||
* 牵引站id
|
||||
|
||||
@@ -14,15 +14,19 @@ import com.njcn.common.pojo.exception.BusinessException;
|
||||
import com.njcn.device.biz.pojo.po.Overlimit;
|
||||
import com.njcn.device.pms.mapper.majornetwork.MonitorMapper;
|
||||
import com.njcn.device.pms.mapper.majornetwork.OverlimitMapper;
|
||||
import com.njcn.device.pms.mapper.majornetwork.StatationStatMapper;
|
||||
import com.njcn.device.pms.pojo.dto.MonitorLimitDTO;
|
||||
import com.njcn.device.pms.pojo.dto.PushMonitorDTO;
|
||||
import com.njcn.device.pms.pojo.po.Monitor;
|
||||
import com.njcn.device.pms.pojo.po.StatationStat;
|
||||
import com.njcn.device.pms.pojo.vo.gw.OtherUserDto;
|
||||
import com.njcn.device.pms.service.gwPush.GwMonitorPushService;
|
||||
import com.njcn.device.pms.service.majornetwork.IMonitorService;
|
||||
import com.njcn.system.api.DicDataFeignClient;
|
||||
import com.njcn.system.api.DictTreeFeignClient;
|
||||
import com.njcn.system.enums.DicDataTypeEnum;
|
||||
import com.njcn.system.pojo.po.DictData;
|
||||
import com.njcn.system.pojo.po.SysDicTreePO;
|
||||
import com.njcn.web.enums.GWSendEnum;
|
||||
import com.njcn.web.factory.PageFactory;
|
||||
import com.njcn.web.pojo.param.BaseParam;
|
||||
@@ -55,6 +59,10 @@ public class GwMonitorPushServiceImpl implements GwMonitorPushService {
|
||||
|
||||
private final DicDataFeignClient dicDataFeignClient;
|
||||
|
||||
private final DictTreeFeignClient dictTreeFeignClient;
|
||||
|
||||
private final StatationStatMapper statationStatMapper;
|
||||
|
||||
|
||||
@Override
|
||||
public String pushMonitor(List<String> ids) {
|
||||
@@ -86,13 +94,55 @@ public class GwMonitorPushServiceImpl implements GwMonitorPushService {
|
||||
throw new BusinessException("一次最多上送100条数据");
|
||||
}
|
||||
|
||||
List<String> stationIds = monitorList.stream().map(Monitor::getPowerrId).distinct().collect(Collectors.toList());
|
||||
|
||||
List<StatationStat> statationStatList = statationStatMapper.selectList(new LambdaQueryWrapper<StatationStat>().in(StatationStat::getPowerId,stationIds));
|
||||
|
||||
Map<String,StatationStat> mapStation = statationStatList.stream().collect(Collectors.toMap(StatationStat::getPowerId,Function.identity()));
|
||||
|
||||
|
||||
for (Monitor item : monitorList) {
|
||||
PushMonitorDTO pushMonitorDTO = new PushMonitorDTO();
|
||||
pushMonitorDTO.setId(item.getId());
|
||||
pushMonitorDTO.setMonitorId(item.getId());
|
||||
pushMonitorDTO.setMonitorId(item.getMonitorId());
|
||||
pushMonitorDTO.setMonitorName(item.getName());
|
||||
pushMonitorDTO.setTerminalCode(item.getTerminalId());
|
||||
// pushMonitorDTO.setObjectType();
|
||||
pushMonitorDTO.setCityId(item.getOrgId());
|
||||
pushMonitorDTO.setIsMajorNet("1");
|
||||
|
||||
|
||||
if(mapStation.containsKey(item.getPowerrId())) {
|
||||
pushMonitorDTO.setSubstationId(mapStation.get(item.getPowerrId()).getMidStationId());
|
||||
pushMonitorDTO.setSubstationName(mapStation.get(item.getPowerrId()).getPowerName());
|
||||
}
|
||||
|
||||
//终端
|
||||
|
||||
|
||||
if (voltageMap.containsKey(item.getVoltageLevel())) {
|
||||
pushMonitorDTO.setVoltageLevel(String.format("%02d", voltageMap.get(item.getVoltageLevel()).getAlgoDescribe()));
|
||||
}
|
||||
|
||||
|
||||
//对象类型
|
||||
SysDicTreePO sysDicTreePO = dictTreeFeignClient.queryById(item.getObjType()).getData();
|
||||
if(sysDicTreePO.getPid().equals("0")){
|
||||
pushMonitorDTO.setObjTypePrePre(sysDicTreePO.getCode());
|
||||
}else {
|
||||
pushMonitorDTO.setObjTypePre(sysDicTreePO.getCode());
|
||||
SysDicTreePO sysDicTreeParent = dictTreeFeignClient.queryById(sysDicTreePO.getPid()).getData();
|
||||
pushMonitorDTO.setObjTypePrePre(sysDicTreeParent.getCode());
|
||||
}
|
||||
pushMonitorDTO.setObjectType("0");
|
||||
|
||||
if (statusMap.containsKey(item.getMonitorState())) {
|
||||
pushMonitorDTO.setStatus(statusMap.get(item.getMonitorState()).getValue());
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
if (Objects.nonNull(item.getMinShortCircuitCapacity())) {
|
||||
pushMonitorDTO.setMinShortCapacity(BigDecimal.valueOf(item.getMinShortCircuitCapacity()));
|
||||
@@ -111,17 +161,13 @@ public class GwMonitorPushServiceImpl implements GwMonitorPushService {
|
||||
pushMonitorDTO.setCustomName(item.getMonitorObjectName());
|
||||
}
|
||||
|
||||
if (statusMap.containsKey(item.getMonitorState())) {
|
||||
pushMonitorDTO.setStatus(statusMap.get(item.getMonitorState()).getValue());
|
||||
}
|
||||
|
||||
|
||||
if (tranMap.containsKey(item.getPotentialTransFormerType())) {
|
||||
pushMonitorDTO.setEvtType(tranMap.get(item.getPotentialTransFormerType()).getValue());
|
||||
}
|
||||
|
||||
if (voltageMap.containsKey(item.getVoltageLevel())) {
|
||||
pushMonitorDTO.setVoltageLevel(String.format("%02d", voltageMap.get(item.getVoltageLevel()).getAlgoDescribe()));
|
||||
}
|
||||
|
||||
|
||||
if (tranMap.containsKey(item.getPotentialTransFormerType())) {
|
||||
pushMonitorDTO.setEvtType(tranMap.get(item.getPotentialTransFormerType()).getValue());
|
||||
@@ -132,8 +178,8 @@ public class GwMonitorPushServiceImpl implements GwMonitorPushService {
|
||||
pushMonitorDTO.setObjTypePrePre(objTagMap.get(item.getMonitorTag()).getValue());
|
||||
}
|
||||
|
||||
pushMonitorDTO.setIsMajorNet("1");
|
||||
pushMonitorDTO.setCityId(item.getOrgId());
|
||||
|
||||
|
||||
if (StrUtil.isNotBlank(item.getOperationId())) {
|
||||
pushMonitorDTO.setMaintOrg(item.getOperationId());
|
||||
}
|
||||
@@ -172,6 +218,9 @@ public class GwMonitorPushServiceImpl implements GwMonitorPushService {
|
||||
lambdaQueryWrapper.in(Monitor::getId, ids).eq(Monitor::getStatus, DataStateEnum.ENABLE.getCode());
|
||||
List<Monitor> monitorList = monitorService.list(lambdaQueryWrapper);
|
||||
|
||||
if (monitorList.size() > 100) {
|
||||
throw new BusinessException("一次最多上送100条数据");
|
||||
}
|
||||
|
||||
LambdaQueryWrapper<Overlimit> queryWrapper = new LambdaQueryWrapper<>();
|
||||
queryWrapper.in(Overlimit::getId, ids);
|
||||
@@ -273,7 +322,7 @@ public class GwMonitorPushServiceImpl implements GwMonitorPushService {
|
||||
sendParam.setStats(pushResult);
|
||||
Map<String, String> sendRes = GwSendUtil.send(sendParam, GWSendEnum.LIMIT_CREATE);
|
||||
List<String> mIds = monitorList.stream().map(Monitor::getId).distinct().collect(Collectors.toList());
|
||||
String msg = returnInformation(1, mIds, sendRes);
|
||||
String msg = returnInformation(2, mIds, sendRes);
|
||||
return msg;
|
||||
} else {
|
||||
throw new BusinessException("暂无监测点信息");
|
||||
@@ -314,7 +363,7 @@ public class GwMonitorPushServiceImpl implements GwMonitorPushService {
|
||||
monitorLimitDTO.setMonitorId(monitor.getMonitorId());
|
||||
|
||||
monitorLimitDTO.setVoltage(monitor.getVoltageLevel());
|
||||
monitorLimitDTO.setMonitorUploadStatus(monitor.getMonitorUploadStatus());
|
||||
monitorLimitDTO.setMonitorUploadStatus(monitor.getMonitorOverlimitStatus());
|
||||
|
||||
|
||||
monitorLimitDTO.setVoldelimiteUp(BigDecimal.valueOf(monitor.getVoltageDeviationUpperLimit()).setScale(3, RoundingMode.HALF_UP));
|
||||
@@ -447,6 +496,12 @@ public class GwMonitorPushServiceImpl implements GwMonitorPushService {
|
||||
.in(Monitor::getId, ids)
|
||||
);
|
||||
break;
|
||||
case 2:
|
||||
monitorService.update(new LambdaUpdateWrapper<Monitor>()
|
||||
.set(Monitor::getMonitorOverlimitStatus, 1)
|
||||
.in(Monitor::getId, ids)
|
||||
);
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
|
||||
@@ -249,6 +249,7 @@ public class MonitorServiceImpl extends ServiceImpl<MonitorMapper, Monitor> impl
|
||||
monitor.setStatus(DataStateEnum.ENABLE.getCode());
|
||||
monitor.setIsUploadHead(0);
|
||||
monitor.setMonitorUploadStatus(0);
|
||||
monitor.setMonitorOverlimitStatus(0);
|
||||
|
||||
//主网测点限值计算
|
||||
Overlimit overlimit = overLimitCal(monitorParam, monitor);
|
||||
@@ -945,6 +946,8 @@ public class MonitorServiceImpl extends ServiceImpl<MonitorMapper, Monitor> impl
|
||||
monitorPO.setLineId(lineId);
|
||||
monitorPO.setVoltageLevel(genScale);
|
||||
monitorPO.setIsUploadHead(0);
|
||||
monitorPO.setMonitorOverlimitStatus(0);
|
||||
monitorPO.setMonitorOverlimitStatus(0);
|
||||
|
||||
String monitorState = null;
|
||||
switch (oracleTerminalExcel.getRunFlag()) {
|
||||
|
||||
Reference in New Issue
Block a user