台账日志

This commit is contained in:
2025-05-13 17:03:39 +08:00
parent bac81db2c7
commit 44d7a97c84
2 changed files with 168 additions and 150 deletions

View File

@@ -211,6 +211,7 @@ public class DeviceRunEvaluateServiceImpl implements DeviceRunEvaluateService {
List<GeneralDeviceDTO> generalDeviceDTOList = generalDeviceService.getDeviceInfo(businessParam, Stream.of(RunFlagEnum.RUNNING.getStatus()).collect(Collectors.toList()), Stream.of(PowerFlagEnum.REAL_DEVICE.getCode()).collect(Collectors.toList())); List<GeneralDeviceDTO> generalDeviceDTOList = generalDeviceService.getDeviceInfo(businessParam, Stream.of(RunFlagEnum.RUNNING.getStatus()).collect(Collectors.toList()), Stream.of(PowerFlagEnum.REAL_DEVICE.getCode()).collect(Collectors.toList()));
if (CollectionUtil.isNotEmpty(generalDeviceDTOList)) { if (CollectionUtil.isNotEmpty(generalDeviceDTOList)) {
if (generalDeviceDTOList.size() == 1 && generalDeviceDTOList.get(0).getIndex().equals(businessParam.getDeptIndex())) { if (generalDeviceDTOList.size() == 1 && generalDeviceDTOList.get(0).getIndex().equals(businessParam.getDeptIndex())) {
if(CollUtil.isNotEmpty(generalDeviceDTOList.get(0).getLineIndexes())) {
//已经最底层,展示电站和用户场站 //已经最底层,展示电站和用户场站
List<MonitorInfoDTO> lineDetailList = lineMapper.getLineListByIds(generalDeviceDTOList.get(0).getLineIndexes()); List<MonitorInfoDTO> lineDetailList = lineMapper.getLineListByIds(generalDeviceDTOList.get(0).getLineIndexes());
List<String> ids = lineDetailList.stream().map(MonitorInfoDTO::getId).distinct().collect(Collectors.toList()); List<String> ids = lineDetailList.stream().map(MonitorInfoDTO::getId).distinct().collect(Collectors.toList());
@@ -240,6 +241,7 @@ public class DeviceRunEvaluateServiceImpl implements DeviceRunEvaluateService {
commDataCat(list, rStatIntegrityDList, rStatOnlinerateDList, rStatLimitRateDPOList, result, name); commDataCat(list, rStatIntegrityDList, rStatOnlinerateDList, rStatLimitRateDPOList, result, name);
}); });
} }
}
} else { } else {
for (GeneralDeviceDTO generalDeviceDTO : generalDeviceDTOList) { for (GeneralDeviceDTO generalDeviceDTO : generalDeviceDTOList) {
List<RStatIntegrityD> rStatIntegrityDList = new ArrayList<>(); List<RStatIntegrityD> rStatIntegrityDList = new ArrayList<>();
@@ -268,6 +270,7 @@ public class DeviceRunEvaluateServiceImpl implements DeviceRunEvaluateService {
dateList.add(DateUtil.format(dateTime, DatePattern.NORM_DATE_PATTERN)); dateList.add(DateUtil.format(dateTime, DatePattern.NORM_DATE_PATTERN));
} }
if (generalDeviceDTOList.size() == 1 && generalDeviceDTOList.get(0).getIndex().equals(businessParam.getDeptIndex())) { if (generalDeviceDTOList.size() == 1 && generalDeviceDTOList.get(0).getIndex().equals(businessParam.getDeptIndex())) {
if (CollUtil.isNotEmpty(generalDeviceDTOList.get(0).getLineIndexes())) {
List<MonitorInfoDTO> lineDetailList = lineMapper.getLineListByIds(generalDeviceDTOList.get(0).getLineIndexes()); List<MonitorInfoDTO> lineDetailList = lineMapper.getLineListByIds(generalDeviceDTOList.get(0).getLineIndexes());
List<RStatIntegrityD> rStatIntegrityDList = new ArrayList<>(); List<RStatIntegrityD> rStatIntegrityDList = new ArrayList<>();
List<RStatOnlinerateD> rStatOnlinerateDList = new ArrayList<>(); List<RStatOnlinerateD> rStatOnlinerateDList = new ArrayList<>();
@@ -296,6 +299,7 @@ public class DeviceRunEvaluateServiceImpl implements DeviceRunEvaluateService {
}); });
} }
}); });
}
} else { } else {
for (GeneralDeviceDTO generalDeviceDTO : generalDeviceDTOList) { for (GeneralDeviceDTO generalDeviceDTO : generalDeviceDTOList) {
if (CollUtil.isEmpty(generalDeviceDTO.getLineIndexes())) { if (CollUtil.isEmpty(generalDeviceDTO.getLineIndexes())) {

View File

@@ -532,7 +532,11 @@ public class TerminalBaseServiceImpl extends ServiceImpl<LineMapper, Line> imple
if(CollUtil.isNotEmpty(logsList)){ if(CollUtil.isNotEmpty(logsList)){
DictData dataDic = dicDataFeignClient.getDicDataByCodeAndType(DicDataEnum.LINE_PARAMETER.getCode(),DicDataTypeEnum.DEV_OPS.getCode()).getData(); DictData dataDic = dicDataFeignClient.getDicDataByCodeAndType(DicDataEnum.LINE_PARAMETER.getCode(),DicDataTypeEnum.DEV_OPS.getCode()).getData();
terminalLogsCat(logsList,0,dataDic.getId()); List<PqsTerminalLogs> pqsTerminalLogsList = new ArrayList<>();
terminalLogsCat(logsList,Param.ADD,dataDic.getId(),pqsTerminalLogsList);
for(PqsTerminalLogs pqsTerminalLogs : pqsTerminalLogsList){
pqsTerminalLogsMapper.insert(pqsTerminalLogs);
}
} }
} }
return true; return true;
@@ -697,8 +701,10 @@ public class TerminalBaseServiceImpl extends ServiceImpl<LineMapper, Line> imple
for (DeviceParam updateDeviceParam : devList) { for (DeviceParam updateDeviceParam : devList) {
if (updateDeviceParam.getUpdateFlag() == 1) { if (updateDeviceParam.getUpdateFlag() == 1) {
devLogsCat(updateDeviceParam,pqsTerminalLogsList,dictDataMap,dicDataByCode,userName); Line devicePO = this.getById(updateDeviceParam.getDevIndex());
Line sub = this.getById(devicePO.getPid());
Device devDetail = deviceMapper.selectById(updateDeviceParam.getDevIndex());
devLogsCat(Param.UPDATE,updateDeviceParam,devicePO,sub,devDetail,pqsTerminalLogsList,dictDataMap,dicDataByCode,userName);
Line device = new Line(); Line device = new Line();
BeanUtils.copyProperties(updateDeviceParam, device); BeanUtils.copyProperties(updateDeviceParam, device);
@@ -710,12 +716,6 @@ public class TerminalBaseServiceImpl extends ServiceImpl<LineMapper, Line> imple
this.updateById(device); this.updateById(device);
deviceMapper.updateById(deviceDetail); deviceMapper.updateById(deviceDetail);
// DeviceProcess deviceProcess = new DeviceProcess();
// deviceProcess.setId(updateDeviceParam.getDevIndex());
// deviceProcess.setProcessNo(updateDeviceParam.getProcessNum());
// deviceProcessService.saveOrUpdate(deviceProcess);
} }
//母线 //母线
@@ -849,12 +849,6 @@ public class TerminalBaseServiceImpl extends ServiceImpl<LineMapper, Line> imple
lineDetailMapper.updateById(lineDetail); lineDetailMapper.updateById(lineDetail);
/* if(StrUtil.isNotBlank(lineDetail.getObjId())){
Line tem = this.getById(lineDetail.getId());
userLedgerFeignClient.bindUserStation(lineDetail.getObjId(),tem.getPids().split(StrUtil.COMMA)[LineBaseEnum.SUB_LEVEL.getCode()]);
}*/
Overlimit overlimitTem = overlimitMapper.selectById(lineId); Overlimit overlimitTem = overlimitMapper.selectById(lineId);
if ((!lineDetailRes.getDevCapacity().equals(lineDetail.getDevCapacity())) if ((!lineDetailRes.getDevCapacity().equals(lineDetail.getDevCapacity()))
|| ((!lineDetailRes.getShortCapacity().equals(lineDetail.getShortCapacity()))) || ((!lineDetailRes.getShortCapacity().equals(lineDetail.getShortCapacity())))
@@ -864,7 +858,6 @@ public class TerminalBaseServiceImpl extends ServiceImpl<LineMapper, Line> imple
|| ((!overlimitTem.getUvoltageDev().equals(updateLineBO.getUvoltageDev())))) || ((!overlimitTem.getUvoltageDev().equals(updateLineBO.getUvoltageDev()))))
) { ) {
//监测点限值 //监测点限值
DictData scaleResult = dicDataFeignClient.getDicDataById(updateSubVoltageParam.getScale()).getData(); DictData scaleResult = dicDataFeignClient.getDicDataById(updateSubVoltageParam.getScale()).getData();
float scaTmp = Float.parseFloat(scaleResult.getValue()); float scaTmp = Float.parseFloat(scaleResult.getValue());
@@ -893,15 +886,11 @@ public class TerminalBaseServiceImpl extends ServiceImpl<LineMapper, Line> imple
String index = RequestUtil.getUserIndex(); String index = RequestUtil.getUserIndex();
queryUpdateAndInsertLog(userName, index, lineDetail, lineDetailRes); queryUpdateAndInsertLog(userName, index, lineDetail, lineDetailRes);
} }
} }
} }
} }
} }
} }
if(CollUtil.isNotEmpty(pqsTerminalLogsList)){ if(CollUtil.isNotEmpty(pqsTerminalLogsList)){
for(PqsTerminalLogs pqsTerminalLogs : pqsTerminalLogsList){ for(PqsTerminalLogs pqsTerminalLogs : pqsTerminalLogsList){
pqsTerminalLogsMapper.insert(pqsTerminalLogs); pqsTerminalLogsMapper.insert(pqsTerminalLogs);
@@ -1417,7 +1406,7 @@ public class TerminalBaseServiceImpl extends ServiceImpl<LineMapper, Line> imple
} }
private void deleteProjectAndChildren(Line project,List<Line> logsList) { private void deleteProjectAndChildren(Line project,List<PqsTerminalLogs> logsList) {
// 1. 删除项目本身 // 1. 删除项目本身
this.removeById(project.getId()); this.removeById(project.getId());
@@ -1437,7 +1426,7 @@ public class TerminalBaseServiceImpl extends ServiceImpl<LineMapper, Line> imple
provinceIds.forEach(it-> deleteProvinceAndChildren(it,logsList)); provinceIds.forEach(it-> deleteProvinceAndChildren(it,logsList));
} }
private void deleteProvinceAndChildren(String provinceId,List<Line> logsList) { private void deleteProvinceAndChildren(String provinceId,List<PqsTerminalLogs> logsList) {
this.removeById(provinceId); this.removeById(provinceId);
// 1. 查询并删除所有供电公司 // 1. 查询并删除所有供电公司
@@ -1456,7 +1445,7 @@ public class TerminalBaseServiceImpl extends ServiceImpl<LineMapper, Line> imple
companyIds.forEach(it-> deletePowerCompanyAndChildren(it,logsList)); companyIds.forEach(it-> deletePowerCompanyAndChildren(it,logsList));
} }
private void deletePowerCompanyAndChildren(String companyId,List<Line> logsList) { private void deletePowerCompanyAndChildren(String companyId,List<PqsTerminalLogs> logsList) {
this.removeById(companyId); this.removeById(companyId);
// 1. 查询并删除所有变电站 // 1. 查询并删除所有变电站
List<Line> substations = findChildren(companyId); List<Line> substations = findChildren(companyId);
@@ -1475,7 +1464,8 @@ public class TerminalBaseServiceImpl extends ServiceImpl<LineMapper, Line> imple
substationIds.forEach(it-> deleteSubstationAndChildren(it,logsList)); substationIds.forEach(it-> deleteSubstationAndChildren(it,logsList));
} }
private void deleteSubstationAndChildren(String substationId,List<Line> logsList) { private void deleteSubstationAndChildren(String substationId,List<PqsTerminalLogs> logsList) {
this.removeById(substationId); this.removeById(substationId);
substationMapper.deleteById(substationId); substationMapper.deleteById(substationId);
// 1. 查询并删除所有装置 // 1. 查询并删除所有装置
@@ -1484,7 +1474,7 @@ public class TerminalBaseServiceImpl extends ServiceImpl<LineMapper, Line> imple
return; return;
} }
logsList.addAll(devices); Map<String,Line> devMap = devices.stream().collect(Collectors.toMap(Line::getId,Function.identity()));
List<String> deviceIds = devices.stream() List<String> deviceIds = devices.stream()
.map(Line::getId) .map(Line::getId)
@@ -1494,15 +1484,28 @@ public class TerminalBaseServiceImpl extends ServiceImpl<LineMapper, Line> imple
deviceMapper.deleteBatchIds(deviceIds); deviceMapper.deleteBatchIds(deviceIds);
devFuctionMapper.deleteBatchIds(deviceIds); devFuctionMapper.deleteBatchIds(deviceIds);
List<Device> deviceList = deviceMapper.selectList(new LambdaQueryWrapper<Device>().select(Device::getId,Device::getNodeId).in(Device::getId,deviceIds));
Line sub = this.getById(substationId);
String userName= RequestUtil.getUserNickname();
Map<String,DictData> dictDataMap = dicDataFeignClient.getDicDataByTypeCode(DicDataTypeEnum.DEV_TYPE.getCode()).getData().stream().collect(Collectors.toMap(DictData::getId, Function.identity()));
DictData dicDataByCode = dicDataFeignClient.getDicDataByCode(DicDataEnum.DEV_PARAMETER.getCode()).getData();
List<PqsTerminalLogs> pqsTerminalLogsList = new ArrayList<>();
deviceList.forEach(dev->{
Line devicePO = devMap.get(dev.getId());
devLogsCat(Param.DEL_ZN,null,devicePO,sub,dev,pqsTerminalLogsList,dictDataMap,dicDataByCode,userName);
});
// 2. 对每个装置删除其下级 // 2. 对每个装置删除其下级
deviceIds.forEach(it-> deleteDeviceAndChildren(it,logsList)); deviceIds.forEach(it-> deleteDeviceAndChildren(it,logsList));
} }
private void deleteDeviceAndChildren(String deviceId,List<Line> logsList) { private void deleteDeviceAndChildren(String deviceId,List<PqsTerminalLogs> logsList) {
this.removeById(deviceId); this.removeById(deviceId);
deviceMapper.deleteById(deviceId); deviceMapper.deleteById(deviceId);
deviceProcessService.removeById(deviceId); deviceProcessService.removeById(deviceId);
// 1. 查询并删除所有母线 // 1. 查询并删除所有母线
List<Line> busbars = findChildren(deviceId); List<Line> busbars = findChildren(deviceId);
if (CollectionUtil.isEmpty(busbars)) { if (CollectionUtil.isEmpty(busbars)) {
@@ -1521,48 +1524,39 @@ public class TerminalBaseServiceImpl extends ServiceImpl<LineMapper, Line> imple
} }
private void deleteBusbarAndChildren(String busbarId,List<Line> logsList) { private void deleteBusbarAndChildren(String busbarId,List<PqsTerminalLogs> logsList) {
this.removeById(busbarId); this.removeById(busbarId);
voltageMapper.deleteById(busbarId); voltageMapper.deleteById(busbarId);
// 1. 查询并删除所有监测点 // 1. 查询并删除所有监测点
List<Line> monitoringPoints = findChildren(busbarId); List<Line> monitoringPoints = findChildren(busbarId);
DictData dataDic = dicDataFeignClient.getDicDataByCodeAndType(DicDataEnum.LINE_PARAMETER.getCode(),DicDataTypeEnum.DEV_OPS.getCode()).getData();
terminalLogsCat(monitoringPoints,Param.DEL,dataDic.getId(),logsList);
if (CollectionUtil.isEmpty(monitoringPoints)) { if (CollectionUtil.isEmpty(monitoringPoints)) {
return; return;
} }
logsList.addAll(monitoringPoints);
List<String> pointIds = monitoringPoints.stream() List<String> pointIds = monitoringPoints.stream()
.map(Line::getId) .map(Line::getId)
.collect(Collectors.toList()); .collect(Collectors.toList());
deleteMonitoringPoints(pointIds,logsList); deleteMonitoringPoints(pointIds);
// 2. 通知设备重启
} }
private void deleteMonitoringPoints(List<String> pointIds,List<Line> logsList) { private void deleteMonitoringPoints(List<String> pointIds) {
this.removeByIds(pointIds); this.removeByIds(pointIds);
lineDetailMapper.deleteBatchIds(pointIds); lineDetailMapper.deleteBatchIds(pointIds);
overlimitMapper.deleteBatchIds(pointIds); overlimitMapper.deleteBatchIds(pointIds);
LambdaQueryWrapper<DeptLine> wrapper = new LambdaQueryWrapper<>(); LambdaQueryWrapper<DeptLine> wrapper = new LambdaQueryWrapper<>();
wrapper.in(DeptLine::getLineId, pointIds); wrapper.in(DeptLine::getLineId, pointIds);
deptLineMapper.delete(wrapper); deptLineMapper.delete(wrapper);
} }
private void deleteMonitoringPoint(Line point,List<Line> logsList) { private void deleteMonitoringPoint(String pointId) {
logsList.add(point); this.removeById(pointId);
this.removeById(point.getId()); lineDetailMapper.deleteById(pointId);
lineDetailMapper.deleteById(point.getId()); overlimitMapper.deleteById(pointId);
overlimitMapper.deleteById(point.getId()); deptLineMapper.deleteById(pointId);
deptLineMapper.deleteById(point.getId());
// 通知设备重启
// String[] pids = point.getPids().split(",");
// if (pids.length > 4) {
// askRestartDevice(pids[4], DeviceRebootType.LEDGER_MODIFY);
// }
} }
private List<Line> findChildren(String pid) { private List<Line> findChildren(String pid) {
@@ -1581,44 +1575,54 @@ public class TerminalBaseServiceImpl extends ServiceImpl<LineMapper, Line> imple
@Override @Override
@Transactional(rollbackFor = Exception.class) @Transactional(rollbackFor = Exception.class)
public Boolean delTerminal(String id) { public Boolean delTerminal(String id) {
List<Line> logsList = new ArrayList<>();
Line obj = this.getById(id); Line obj = this.getById(id);
if (Objects.isNull(obj)) { if (Objects.isNull(obj)) {
throw new BusinessException(CommonResponseEnum.FAIL); throw new BusinessException(CommonResponseEnum.FAIL);
} }
List<PqsTerminalLogs> pqsTerminalLogsList = new ArrayList<>();
LineBaseEnum lineBaseEnum = LineBaseEnum.getLineBaseEnumByCode(obj.getLevel()); LineBaseEnum lineBaseEnum = LineBaseEnum.getLineBaseEnumByCode(obj.getLevel());
// 根据层级选择删除策略 // 根据层级选择删除策略
switch (lineBaseEnum) { switch (lineBaseEnum) {
case PROJECT_LEVEL: case PROJECT_LEVEL:
deleteProjectAndChildren(obj,logsList); deleteProjectAndChildren(obj,pqsTerminalLogsList);
break; break;
case PROVINCE_LEVEL: case PROVINCE_LEVEL:
deleteProvinceAndChildren(obj.getId(),logsList); deleteProvinceAndChildren(obj.getId(),pqsTerminalLogsList);
break; break;
case GD_LEVEL: case GD_LEVEL:
deletePowerCompanyAndChildren(obj.getId(),logsList); deletePowerCompanyAndChildren(obj.getId(),pqsTerminalLogsList);
break; break;
case SUB_LEVEL: case SUB_LEVEL:
deleteSubstationAndChildren(obj.getId(),logsList); deleteSubstationAndChildren(obj.getId(),pqsTerminalLogsList);
break; break;
case DEVICE_LEVEL: case DEVICE_LEVEL:
deleteDeviceAndChildren(obj.getId(),logsList); Line sub = this.getById(obj.getPid());
logsList.add(obj); Device dev = deviceMapper.selectById(obj.getId());
String userName= RequestUtil.getUserNickname();
Map<String,DictData> dictDataMap = dicDataFeignClient.getDicDataByTypeCode(DicDataTypeEnum.DEV_TYPE.getCode()).getData().stream().collect(Collectors.toMap(DictData::getId, Function.identity()));
DictData dicDataByCode = dicDataFeignClient.getDicDataByCode(DicDataEnum.DEV_PARAMETER.getCode()).getData();
devLogsCat(Param.DEL_ZN,null,obj,sub,dev,pqsTerminalLogsList,dictDataMap,dicDataByCode,userName);
deleteDeviceAndChildren(obj.getId(),pqsTerminalLogsList);
break; break;
case SUB_V_LEVEL: case SUB_V_LEVEL:
deleteBusbarAndChildren(obj.getId(),logsList); deleteBusbarAndChildren(obj.getId(),pqsTerminalLogsList);
break; break;
case LINE_LEVEL: case LINE_LEVEL:
deleteMonitoringPoint(obj,logsList); deleteMonitoringPoint(obj.getId());
DictData dataDic = dicDataFeignClient.getDicDataByCodeAndType(DicDataEnum.LINE_PARAMETER.getCode(),DicDataTypeEnum.DEV_OPS.getCode()).getData();
terminalLogsCat(Stream.of(obj).collect(Collectors.toList()), Param.DEL,dataDic.getId(),pqsTerminalLogsList);
break; break;
default: default:
throw new BusinessException(CommonResponseEnum.FAIL); throw new BusinessException(CommonResponseEnum.FAIL);
} }
if(CollUtil.isNotEmpty(logsList)){ if(CollUtil.isNotEmpty(pqsTerminalLogsList)){
DictData dataDic = dicDataFeignClient.getDicDataByCodeAndType(DicDataEnum.DEV_PARAMETER.getCode(),DicDataTypeEnum.DEV_OPS.getCode()).getData(); for(PqsTerminalLogs pqsTerminalLogs: pqsTerminalLogsList){
terminalLogsCat(logsList,2,dataDic.getId()); pqsTerminalLogsMapper.insert(pqsTerminalLogs);
}
} }
return true; return true;
} }
@@ -3791,24 +3795,20 @@ public class TerminalBaseServiceImpl extends ServiceImpl<LineMapper, Line> imple
/** /**
* 终端日志记录 * 终端日志记录
*/ */
private void terminalLogsCat(List<Line> logsList,Integer operateType,String logsType){ private void terminalLogsCat(List<Line> logsList,String operateType,String logsType,List<PqsTerminalLogs> pqsTerminalLogsList){
String op,operate; String op;
switch (operateType){ switch (operateType){
case 0: case Param.ADD:
op = Param.ADD_ZN; op = Param.ADD_ZN;
operate = Param.ADD;
break; break;
case 1: case Param.UPDATE:
op = Param.UPDATE_ZN; op = Param.UPDATE_ZN;
operate = Param.UPDATE;
break; break;
case 2: case Param.DEL:
op = Param.DEL_ZN; op = Param.DEL_ZN;
operate = Param.DEL;
break; break;
default: default:
op=Param.UNKONOW; op=Param.UNKONOW;
operate = Param.UNKONOW;
break; break;
} }
String name = RequestUtil.getUserNickname(); String name = RequestUtil.getUserNickname();
@@ -3829,34 +3829,49 @@ public class TerminalBaseServiceImpl extends ServiceImpl<LineMapper, Line> imple
String subName; String subName;
String levelOperate; String levelOperate;
String nodeName = "";
if(line.getLevel().equals(LINE_LEVEL.getCode())){ if(line.getLevel().equals(LINE_LEVEL.getCode())){
levelOperate = LINE_LEVEL.getMessage(); levelOperate = LINE_LEVEL.getMessage();
}else{ }else{
levelOperate = DEVICE_LEVEL.getMessage(); levelOperate = DEVICE_LEVEL.getMessage();
if(Param.DEL_ZN.equals(op)){
// nodeName = "; 前置名称:"+node.getName();
}
} }
subName = subMap.get(line.getPids().split(StrUtil.COMMA)[SUB_LEVEL.getCode()]).getName(); subName = subMap.get(line.getPids().split(StrUtil.COMMA)[SUB_LEVEL.getCode()]).getName();
String temLos = "%s进行%s%s操作; %s名称: %s"; String temLos = "%s进行%s%s操作; %s名称: %s";
String tem = String.format(temLos,name,op,levelOperate,levelOperate,subName+"_"+line.getName()); String tem = String.format(temLos,name,op,levelOperate,levelOperate,subName+"_"+line.getName()+nodeName);
pqsTerminalLogs.setTerminalDescribe(tem); pqsTerminalLogs.setTerminalDescribe(tem);
pqsTerminalLogs.setState(DataStateEnum.ENABLE.getCode()); pqsTerminalLogs.setState(DataStateEnum.ENABLE.getCode());
pqsTerminalLogs.setIsPush(0); pqsTerminalLogs.setIsPush(0);
pqsTerminalLogs.setOperateType(operate); pqsTerminalLogs.setOperateType(operateType);
pqsTerminalLogs.setObjIndex(line.getId()); pqsTerminalLogs.setObjIndex(line.getId());
pqsTerminalLogsMapper.insert(pqsTerminalLogs); pqsTerminalLogsList.add(pqsTerminalLogs);
} }
} }
} }
public void devLogsCat(DeviceParam updateDeviceParam, List<PqsTerminalLogs> pqsTerminalLogsList, Map<String, DictData> dictDataMap, DictData dicDataByCode, String userName) { public void devLogsCat(String op,DeviceParam updateDeviceParam,Line devicePO,Line sub,Device devDetail, List<PqsTerminalLogs> pqsTerminalLogsList, Map<String, DictData> dictDataMap, DictData dicDataByCode, String userName) {
Line devicePO = this.getById(updateDeviceParam.getDevIndex()); StringBuilder stringBuilder = new StringBuilder(String.format("%s进行%s装置(%s_%s)操作,详细信息:", userName,op,sub.getName(), devicePO.getName()));
Line sub = this.getById(devicePO.getPid());
Device devDetail = deviceMapper.selectById(updateDeviceParam.getDevIndex()); if(Param.DEL_ZN.equals(op)){
Node node = nodeService.getById(devDetail.getNodeId());
String info = sub.getName()+"_"+devicePO.getName()+";前置信息:"+node.getName();
stringBuilder.append(info);
PqsTerminalLogs pqsTerminalLogs = new PqsTerminalLogs();
pqsTerminalLogs.setOperateType(Param.DEL);
pqsTerminalLogs.setTerminalType(DEVICE_LEVEL.getCode());
pqsTerminalLogs.setState(DataStateEnum.ENABLE.getCode());
pqsTerminalLogs.setObjIndex(devicePO.getId());
pqsTerminalLogs.setIsPush(0);
pqsTerminalLogs.setLogsType(dicDataByCode.getId());
pqsTerminalLogs.setTerminalDescribe(stringBuilder.toString());
pqsTerminalLogsList.add(pqsTerminalLogs);
}else if(Param.UPDATE_ZN.equals(op)){
StringBuilder stringBuilder = new StringBuilder(String.format("%s进行修改装置(%s_%s)操作,详细信息:", userName, sub.getName(), devicePO.getName()));
boolean flag = false; boolean flag = false;
// 比较装置名称 // 比较装置名称
flag |= compareAndAppend(stringBuilder, devicePO.getName(), updateDeviceParam.getName(), "装置名称"); flag |= compareAndAppend(stringBuilder, devicePO.getName(), updateDeviceParam.getName(), "装置名称");
@@ -3865,14 +3880,12 @@ public class TerminalBaseServiceImpl extends ServiceImpl<LineMapper, Line> imple
// 比较装置端口号 // 比较装置端口号
flag |= compareAndAppend(stringBuilder, devDetail.getPort(), updateDeviceParam.getPort(), "装置端口号"); flag |= compareAndAppend(stringBuilder, devDetail.getPort(), updateDeviceParam.getPort(), "装置端口号");
// 比较装置型号 // 比较装置型号
if (updateDeviceParam.getDevType() != null) { if (updateDeviceParam.getDevType() != null) {
String oldDevTypeName = dictDataMap.get(devDetail.getDevType()) != null ? dictDataMap.get(devDetail.getDevType()).getName() : null; String oldDevTypeName = dictDataMap.get(devDetail.getDevType()) != null ? dictDataMap.get(devDetail.getDevType()).getName() : null;
String newDevTypeName = dictDataMap.get(updateDeviceParam.getDevType()) != null ? dictDataMap.get(updateDeviceParam.getDevType()).getName() : null; String newDevTypeName = dictDataMap.get(updateDeviceParam.getDevType()) != null ? dictDataMap.get(updateDeviceParam.getDevType()).getName() : null;
flag |= compareAndAppend(stringBuilder, oldDevTypeName, newDevTypeName, "装置型号"); compareAndAppend(stringBuilder, oldDevTypeName, newDevTypeName, "装置型号");
} }
if(flag){ if(flag){
PqsTerminalLogs pqsTerminalLogs = new PqsTerminalLogs(); PqsTerminalLogs pqsTerminalLogs = new PqsTerminalLogs();
pqsTerminalLogs.setOperateType(Param.UPDATE); pqsTerminalLogs.setOperateType(Param.UPDATE);
@@ -3885,6 +3898,7 @@ public class TerminalBaseServiceImpl extends ServiceImpl<LineMapper, Line> imple
pqsTerminalLogsList.add(pqsTerminalLogs); pqsTerminalLogsList.add(pqsTerminalLogs);
} }
} }
}
private boolean compareAndAppend(StringBuilder sb, String oldValue, String newValue, String fieldName) { private boolean compareAndAppend(StringBuilder sb, String oldValue, String newValue, String fieldName) {
if (oldValue != null && !oldValue.equals(newValue)) { if (oldValue != null && !oldValue.equals(newValue)) {
sb.append(String.format("%s由 %s 改为> %s;", fieldName, oldValue, newValue)); sb.append(String.format("%s由 %s 改为> %s;", fieldName, oldValue, newValue));