终端重要日志功能开发

This commit is contained in:
2025-04-07 10:32:43 +08:00
parent 25ad24deb9
commit 6cb549102b
6 changed files with 306 additions and 62 deletions

View File

@@ -41,6 +41,8 @@ public enum LineBaseEnum {
POWER_FLAG(0,"电网侧"),
POWER_FLAG_NOT(1,"非电网侧"),
;
private final Integer code;

View File

@@ -25,6 +25,9 @@ public enum PowerFlagEnum {
private final Integer code;
private final String message;

View File

@@ -4,6 +4,8 @@ import com.baomidou.mybatisplus.annotation.TableName;
import com.njcn.db.bo.BaseEntity;
import java.io.Serializable;
import java.time.LocalDateTime;
import lombok.EqualsAndHashCode;
import lombok.Getter;
import lombok.Setter;
@@ -28,17 +30,32 @@ public class PqsTerminalLogs extends BaseEntity {
private String id;
/**
* 装置或监测点Id
* 对象Id
*/
private String objIndex;
/**
* 运维日志类型Id
* 对象类型 0.监测点 1.装置
*/
private String terminalType;
private Integer terminalType;
/**
* 内容
* 新增,修改,删除
*/
private String operateType;
/**
* 运维日志类型
*/
private String logsType;
/**
* 是否推送
*/
private Integer isPush;
/**
* 内容描述
*/
private String terminalDescribe;

View File

@@ -86,6 +86,8 @@ import java.util.*;
import java.util.stream.Collectors;
import java.util.stream.Stream;
import static com.njcn.device.pq.enums.LineBaseEnum.*;
/**
* pqs
*
@@ -179,8 +181,8 @@ public class TerminalBaseServiceImpl extends ServiceImpl<LineMapper, Line> imple
//项目
if (Objects.nonNull(addTerminalParam.getProjectParam())) {
if (StrUtil.isBlank(projectIndex)) {
checkName(addTerminalParam, LineBaseEnum.PROJECT_LEVEL.getCode(), null);
Line line = assembleLine(addTerminalParam.getProjectParam().getName(), LineBaseEnum.PROJECT_LEVEL.getCode(), "0", "0", addTerminalParam.getProjectParam().getSort());
checkName(addTerminalParam, PROJECT_LEVEL.getCode(), null);
Line line = assembleLine(addTerminalParam.getProjectParam().getName(), PROJECT_LEVEL.getCode(), "0", "0", addTerminalParam.getProjectParam().getSort());
this.baseMapper.insert(line);
projectIndex = line.getId();
}
@@ -193,8 +195,8 @@ public class TerminalBaseServiceImpl extends ServiceImpl<LineMapper, Line> imple
throw new BusinessException(DeviceResponseEnum.PROVINCE_GET_ERROR);
}
LogUtil.njcnDebug(log, "获取区域信息:{}", result.toString());
checkName(addTerminalParam, LineBaseEnum.PROVINCE_LEVEL.getCode(), projectIndex);
Line province = assembleLine(result.getId(), LineBaseEnum.PROVINCE_LEVEL.getCode(), projectIndex, projectIndex, addTerminalParam.getProvinceParam().getSort());
checkName(addTerminalParam, PROVINCE_LEVEL.getCode(), projectIndex);
Line province = assembleLine(result.getId(), PROVINCE_LEVEL.getCode(), projectIndex, projectIndex, addTerminalParam.getProvinceParam().getSort());
this.baseMapper.insert(province);
provinceIndex = province.getId();
}
@@ -203,8 +205,8 @@ public class TerminalBaseServiceImpl extends ServiceImpl<LineMapper, Line> imple
//供电公司
if (Objects.nonNull(addTerminalParam.getGdInformationParam())) {
if (StrUtil.isBlank(gdIndex) && StrUtil.isNotBlank(provinceIndex)) {
checkName(addTerminalParam, LineBaseEnum.GD_LEVEL.getCode(), provinceIndex);
Line gdInformation = assembleLine(addTerminalParam.getGdInformationParam().getName(), LineBaseEnum.GD_LEVEL.getCode(), provinceIndex, projectIndex + StrUtil.COMMA + provinceIndex, addTerminalParam.getGdInformationParam().getSort());
checkName(addTerminalParam, GD_LEVEL.getCode(), provinceIndex);
Line gdInformation = assembleLine(addTerminalParam.getGdInformationParam().getName(), GD_LEVEL.getCode(), provinceIndex, projectIndex + StrUtil.COMMA + provinceIndex, addTerminalParam.getGdInformationParam().getSort());
this.baseMapper.insert(gdInformation);
gdIndex = gdInformation.getId();
}
@@ -230,6 +232,10 @@ public class TerminalBaseServiceImpl extends ServiceImpl<LineMapper, Line> imple
//装置
if (Objects.nonNull(addTerminalParam.getDeviceParam())) {
List<Line> logsList = new ArrayList<>();
LambdaQueryWrapper<Line> lineLambdaQueryWrapper = new LambdaQueryWrapper<>();
if (CollectionUtil.isNotEmpty(addTerminalParam.getDeviceParam()) && StrUtil.isNotBlank(subIndex)) {
//校验变电站下的装置名称ip是否重复
@@ -256,17 +262,14 @@ public class TerminalBaseServiceImpl extends ServiceImpl<LineMapper, Line> imple
}
}
}
//一台装置母线最多10路
if (StrUtil.isBlank(subVoltage.getSubvIndex())) {
voltageNum++;
}
}
}
if (StrUtil.isBlank(deviceParam.getDevIndex())) {
Line device = assembleLine(deviceParam.getName(), LineBaseEnum.DEVICE_LEVEL.getCode(), subIndex, projectIndex + StrUtil.COMMA + provinceIndex + StrUtil.COMMA + gdIndex + StrUtil.COMMA + subIndex, deviceParam.getSort());
this.baseMapper.insert(device);
devIdIndex = device.getId();
@@ -338,6 +341,7 @@ public class TerminalBaseServiceImpl extends ServiceImpl<LineMapper, Line> imple
funQueryWrapper.lambda().eq(DevFuction::getLineId, device.getId());
devFuctionMapper.delete(funQueryWrapper);
devFuctionMapper.addBatch(insertFunList);
logsList.add(device);
} else {
devIdIndex = deviceParam.getDevIndex();
List<LineDetail> lineDetails = lineMapper.getLineDetailByDeviceId(devIdIndex);
@@ -376,7 +380,7 @@ public class TerminalBaseServiceImpl extends ServiceImpl<LineMapper, Line> imple
.eq(Line::getState, DataStateEnum.ENABLE.getCode())
.in(Line::getName, subvNameList);
List<Line> subvRes = this.list(lineLambdaQueryWrapper);
if (subvRes.size() > 0) {
if (!subvRes.isEmpty()) {
List<String> subvList = subvRes.stream().map(Line::getName).collect(Collectors.toList());
throw new BusinessException(DeviceResponseEnum.SUBV_NAME_SAME, String.join(";", subvList));
}
@@ -388,7 +392,7 @@ public class TerminalBaseServiceImpl extends ServiceImpl<LineMapper, Line> imple
if (CollectionUtil.isNotEmpty(voltageName)) {
List<Line> voltageList = this.baseMapper.getVoltageListBySubId(subIndex, voltageName);
if (CollectionUtil.isNotEmpty(voltageList)) {
throw new BusinessException(DeviceResponseEnum.SUBV_NAME_SAME, String.join(";", voltageList.stream().map(Line::getName).collect(Collectors.toList())));
throw new BusinessException(DeviceResponseEnum.SUBV_NAME_SAME, voltageList.stream().map(Line::getName).collect(Collectors.joining(";")));
}
}
@@ -398,22 +402,19 @@ public class TerminalBaseServiceImpl extends ServiceImpl<LineMapper, Line> imple
if (CollectionUtil.isNotEmpty(addVoltage)) {
List<Line> voltageListBySubId = this.baseMapper.getVoltageListBySubId(subIndex, addVoltage);
if (CollectionUtil.isNotEmpty(voltageListBySubId)) {
throw new BusinessException(DeviceResponseEnum.SUBV_NAME_SAME, String.join(";", voltageListBySubId.stream().map(Line::getName).collect(Collectors.toList())));
throw new BusinessException(DeviceResponseEnum.SUBV_NAME_SAME, voltageListBySubId.stream().map(Line::getName).collect(Collectors.joining(";")));
}
}
for (SubVoltageParam subVoltageParam : deviceParam.getSubVoltageParam()) {
//母线id
String subvIndex;
if (StrUtil.isBlank(subVoltageParam.getSubvIndex()) && StrUtil.isNotBlank(devIdIndex)) {
DictData scaleRes = dicDataFeignClient.getDicDataById(subVoltageParam.getScale()).getData();
if (Objects.isNull(scaleRes)) {
throw new BusinessException(DeviceResponseEnum.DIC_GET_EMPTY);
}
//校验母线
if (CollectionUtil.isNotEmpty(listVoltageNum)) {
if (!listVoltageNum.contains(subVoltageParam.getNum())) {
@@ -423,7 +424,6 @@ public class TerminalBaseServiceImpl extends ServiceImpl<LineMapper, Line> imple
throw new BusinessException(DeviceResponseEnum.DEVICE_VOLTAGE_BIG);
}
Line subVoltage = assembleLine(subVoltageParam.getName(), LineBaseEnum.SUB_V_LEVEL.getCode(), devIdIndex, projectIndex + StrUtil.COMMA + provinceIndex + StrUtil.COMMA + gdIndex + StrUtil.COMMA + subIndex + StrUtil.COMMA + devIdIndex, subVoltageParam.getSort());
this.baseMapper.insert(subVoltage);
subvIndex = subVoltage.getId();
@@ -447,7 +447,7 @@ public class TerminalBaseServiceImpl extends ServiceImpl<LineMapper, Line> imple
.eq(Line::getState, DataStateEnum.ENABLE.getCode())
.in(Line::getName, lineNameList);
List<Line> lineList = this.list(lineLambdaQueryWrapper);
if (lineList.size() > 0) {
if (!lineList.isEmpty()) {
List<String> lineRes = lineList.stream().map(Line::getName).collect(Collectors.toList());
throw new BusinessException(DeviceResponseEnum.LINE_NAME_REPETITION, String.join(";", lineRes));
}
@@ -465,7 +465,6 @@ public class TerminalBaseServiceImpl extends ServiceImpl<LineMapper, Line> imple
}
//删除与当前线路号重复的项
listLineNum.removeIf(lineNo -> lineNo.equals(lineParam.getNum()));
HttpResult<DictData> httpScale = dicDataFeignClient.getDicDataById(subVoltageParam.getScale());
Line line = assembleLine(lineParam.getName(), LineBaseEnum.LINE_LEVEL.getCode(), subvIndex, projectIndex + StrUtil.COMMA + provinceIndex + StrUtil.COMMA + gdIndex + StrUtil.COMMA + subIndex + StrUtil.COMMA + devIdIndex + StrUtil.COMMA + subvIndex, lineParam.getSort());
this.baseMapper.insert(line);
LineDetail lineDetail = new LineDetail();
@@ -511,12 +510,10 @@ public class TerminalBaseServiceImpl extends ServiceImpl<LineMapper, Line> imple
} else {
overlimit.setUvoltageDev(lineParam.getUvoltageDev());
}
//Overlimit overlimit = new Overlimit(line.getId(), scaTmp, lineDetail.getShortCapacity(), lineDetail.getStandardCapacity(), lineDetail.getDealCapacity(), lineDetail.getDevCapacity());
overlimitMapper.deleteById(line.getId());
overlimit.setId(line.getId());
overlimitMapper.insert(overlimit);
logsList.add(line);
}
}
@@ -527,6 +524,8 @@ public class TerminalBaseServiceImpl extends ServiceImpl<LineMapper, Line> imple
} else {
throw new BusinessException(CommonResponseEnum.FAIL);
}
terminalLogsCat(logsList,0);
}
return true;
}
@@ -600,10 +599,10 @@ public class TerminalBaseServiceImpl extends ServiceImpl<LineMapper, Line> imple
//供电公司
if (Objects.nonNull(updateTerminalParam.getGdInformationUpdateParam())) {
Line gdRes = this.getById(updateTerminalParam.getGdInformationUpdateParam().getGdIndex());
gbName = gdRes.getName();
if (Objects.isNull(gdRes)) {
throw new BusinessException(DeviceResponseEnum.GD_NO);
}
gbName = gdRes.getName();
Line gdInformation = new Line();
gdInformation.setId(updateTerminalParam.getGdInformationUpdateParam().getGdIndex());
gdInformation.setName(updateTerminalParam.getGdInformationUpdateParam().getName());
@@ -682,6 +681,7 @@ public class TerminalBaseServiceImpl extends ServiceImpl<LineMapper, Line> imple
}
List<Line> logsList = new ArrayList<>();
for (DeviceParam updateDeviceParam : devList) {
if (updateDeviceParam.getUpdateFlag() == 1) {
Line device = new Line();
@@ -693,6 +693,8 @@ public class TerminalBaseServiceImpl extends ServiceImpl<LineMapper, Line> imple
coderM3d(deviceDetail,true);
this.updateById(device);
deviceMapper.updateById(deviceDetail);
logsList.add(device);
}
//母线
@@ -971,10 +973,11 @@ public class TerminalBaseServiceImpl extends ServiceImpl<LineMapper, Line> imple
PqsTerminalLogs terminalLogsNew = new PqsTerminalLogs();
terminalLogsNew.setObjIndex(newLine.getId());
terminalLogsNew.setTerminalDescribe(sb.toString());
terminalLogsNew.setCreateBy(index);
terminalLogsNew.setCreateTime(LocalDateTime.now());
terminalLogsNew.setTerminalType(data.getId());
terminalLogsNew.setState(1);
terminalLogsNew.setTerminalType(LineBaseEnum.LINE_LEVEL.getCode());
terminalLogsNew.setLogsType(data.getId());
terminalLogsNew.setState(DataStateEnum.ENABLE.getCode());
terminalLogsNew.setIsPush(DataStateEnum.ENABLE.getCode());
terminalLogsNew.setOperateType("update");
iPqsTerminalLogsService.save(terminalLogsNew);
}
@@ -1005,15 +1008,15 @@ public class TerminalBaseServiceImpl extends ServiceImpl<LineMapper, Line> imple
}
LambdaQueryWrapper<Line> lineLambdaQueryWrapper = new LambdaQueryWrapper<>();
TerminalVO terminalVO = new TerminalVO();
if (obj.getLevel().equals(LineBaseEnum.PROJECT_LEVEL.getCode())) {
if (obj.getLevel().equals(PROJECT_LEVEL.getCode())) {
//点击项目节点
assProject(obj, terminalVO);
} else if (obj.getLevel().equals(LineBaseEnum.PROVINCE_LEVEL.getCode())) {
} else if (obj.getLevel().equals(PROVINCE_LEVEL.getCode())) {
//点击省份节点
Line project = this.getById(obj.getPid());
assProject(project, terminalVO);
assProvince(obj, terminalVO);
} else if (obj.getLevel().equals(LineBaseEnum.GD_LEVEL.getCode())) {
} else if (obj.getLevel().equals(GD_LEVEL.getCode())) {
//点击供电公司节点
assGd(obj, terminalVO);
Line province = this.getById(obj.getPid());
@@ -1366,16 +1369,193 @@ public class TerminalBaseServiceImpl extends ServiceImpl<LineMapper, Line> imple
return one;
}
private void deleteProjectAndChildren(Line project,List<Line> logsList) {
// 1. 删除项目本身
this.removeById(project.getId());
// 2. 查询并删除所有省份
List<Line> provinces = findChildren(project.getId());
if (CollectionUtil.isEmpty(provinces)) return;
List<String> provinceIds = provinces.stream()
.map(Line::getId)
.collect(Collectors.toList());
this.removeByIds(provinceIds);
// 3. 对每个省份删除其下级
provinceIds.forEach(it-> deleteProvinceAndChildren(it,logsList));
}
private void deleteProvinceAndChildren(String provinceId,List<Line> logsList) {
// 1. 查询并删除所有供电公司
List<Line> powerCompanies = findChildren(provinceId);
if (CollectionUtil.isEmpty(powerCompanies)) return;
List<String> companyIds = powerCompanies.stream()
.map(Line::getId)
.collect(Collectors.toList());
this.removeByIds(companyIds);
// 2. 对每个供电公司删除其下级
companyIds.forEach(it-> deletePowerCompanyAndChildren(it,logsList));
}
private void deletePowerCompanyAndChildren(String companyId,List<Line> logsList) {
// 1. 查询并删除所有变电站
List<Line> substations = findChildren(companyId);
if (CollectionUtil.isEmpty(substations)) return;
List<String> substationIds = substations.stream()
.map(Line::getId)
.collect(Collectors.toList());
this.removeByIds(substationIds);
substationMapper.deleteBatchIds(substationIds);
// 2. 对每个变电站删除其下级
substationIds.forEach(it-> deleteSubstationAndChildren(it,logsList));
}
private void deleteSubstationAndChildren(String substationId,List<Line> logsList) {
// 1. 查询并删除所有装置
List<Line> devices = findChildren(substationId);
if (CollectionUtil.isEmpty(devices)) return;
logsList.addAll(devices);
List<String> deviceIds = devices.stream()
.map(Line::getId)
.collect(Collectors.toList());
this.removeByIds(deviceIds);
deviceMapper.deleteBatchIds(deviceIds);
devFuctionMapper.deleteBatchIds(deviceIds);
// 2. 对每个装置删除其下级
deviceIds.forEach(it-> deleteDeviceAndChildren(it,logsList));
}
private void deleteDeviceAndChildren(String deviceId,List<Line> logsList) {
// 1. 查询并删除所有母线
List<Line> busbars = findChildren(deviceId);
if (CollectionUtil.isEmpty(busbars)) return;
List<String> busbarIds = busbars.stream()
.map(Line::getId)
.collect(Collectors.toList());
this.removeByIds(busbarIds);
voltageMapper.deleteBatchIds(busbarIds);
// 2. 对每条母线删除其下级
busbarIds.forEach(it-> deleteBusbarAndChildren(it,logsList));
// 3. 通知设备重启
// askRestartDevice(deviceId, DeviceRebootType.DELETE_TERMINAL);
}
private void deleteBusbarAndChildren(String busbarId,List<Line> logsList) {
// 1. 查询并删除所有监测点
List<Line> monitoringPoints = findChildren(busbarId);
if (CollectionUtil.isEmpty(monitoringPoints)) return;
logsList.addAll(monitoringPoints);
List<String> pointIds = monitoringPoints.stream()
.map(Line::getId)
.collect(Collectors.toList());
deleteMonitoringPoints(pointIds,logsList);
// 2. 通知设备重启
/* String[] pids = getById(busbarId).getPids().split(",");
if (pids.length > 4) {
askRestartDevice(pids[4], DeviceRebootType.LEDGER_MODIFY);
}*/
}
private void deleteMonitoringPoints(List<String> pointIds,List<Line> logsList) {
this.removeByIds(pointIds);
lineDetailMapper.deleteBatchIds(pointIds);
overlimitMapper.deleteBatchIds(pointIds);
LambdaQueryWrapper<DeptLine> wrapper = new LambdaQueryWrapper<>();
wrapper.in(DeptLine::getLineId, pointIds);
deptLineMapper.delete(wrapper);
}
private void deleteMonitoringPoint(Line point) {
lineDetailMapper.deleteById(point.getId());
overlimitMapper.deleteById(point.getId());
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) {
LambdaQueryWrapper<Line> wrapper = new LambdaQueryWrapper<>();
wrapper.eq(Line::getPid, pid)
.eq(Line::getState, DataStateEnum.ENABLE.getCode());
return this.list(wrapper);
}
private void syncToExternalSystem(Line obj) {
SyncLedgerDelete delete = oracleSyncLedgerDelete(obj);
RestTemplateUtil.post(urlDelete, delete, String.class);
}
@Override
@Transactional(rollbackFor = Exception.class)
public Boolean delTerminal(String id) {
List<Line> logsList = new ArrayList<>();
Line obj = this.getById(id);
if (Objects.isNull(obj)) {
throw new BusinessException(CommonResponseEnum.FAIL);
}
LineBaseEnum lineBaseEnum = LineBaseEnum.getLineBaseEnumByCode(obj.getLevel());
// 根据层级选择删除策略
switch (lineBaseEnum) {
case PROJECT_LEVEL:
deleteProjectAndChildren(obj,logsList);
break;
case PROVINCE_LEVEL:
deleteProvinceAndChildren(obj.getId(),logsList);
break;
case GD_LEVEL:
deletePowerCompanyAndChildren(obj.getId(),logsList);
break;
case SUB_LEVEL:
deleteSubstationAndChildren(obj.getId(),logsList);
break;
case DEVICE_LEVEL:
deleteDeviceAndChildren(obj.getId(),logsList);
break;
case SUB_V_LEVEL:
deleteBusbarAndChildren(obj.getId(),logsList);
break;
case LINE_LEVEL:
deleteMonitoringPoint(obj);
break;
default:
throw new BusinessException(CommonResponseEnum.FAIL);
}
if(CollUtil.isNotEmpty(logsList)){
terminalLogsCat(logsList,2);
}
/*
this.removeById(obj.getId());
LambdaQueryWrapper<Line> lambdaQueryWrapper = new LambdaQueryWrapper<>();
if (obj.getLevel().equals(LineBaseEnum.PROJECT_LEVEL.getCode())) {
if (obj.getLevel().equals(PROJECT_LEVEL.getCode())) {
//项目
lambdaQueryWrapper.eq(Line::getPid, obj.getId())
.eq(Line::getState, DataStateEnum.ENABLE.getCode());
@@ -1409,6 +1589,9 @@ public class TerminalBaseServiceImpl extends ServiceImpl<LineMapper, Line> imple
List<Line> deviceList = this.list(lambdaQueryWrapper);
if (CollectionUtil.isNotEmpty(deviceList)) {
List<String> devIndexList = deviceList.stream().map(Line::getId).collect(Collectors.toList());
this.removeByIds(devIndexList);
deviceMapper.deleteBatchIds(devIndexList);
devFuctionMapper.deleteBatchIds(devIndexList);
@@ -1451,7 +1634,7 @@ public class TerminalBaseServiceImpl extends ServiceImpl<LineMapper, Line> imple
}
} else if (obj.getLevel().equals(LineBaseEnum.PROVINCE_LEVEL.getCode())) {
} else if (obj.getLevel().equals(PROVINCE_LEVEL.getCode())) {
//省份
lambdaQueryWrapper.eq(Line::getPid, obj.getId());
List<Line> gdInformationList = this.list(lambdaQueryWrapper);
@@ -1516,7 +1699,7 @@ public class TerminalBaseServiceImpl extends ServiceImpl<LineMapper, Line> imple
}
}
} else if (obj.getLevel().equals(LineBaseEnum.GD_LEVEL.getCode())) {
} else if (obj.getLevel().equals(GD_LEVEL.getCode())) {
//供电公司
lambdaQueryWrapper.eq(Line::getPid, obj.getId());
List<Line> subStationList = this.list(lambdaQueryWrapper);
@@ -1685,7 +1868,7 @@ public class TerminalBaseServiceImpl extends ServiceImpl<LineMapper, Line> imple
if (isSync) {
SyncLedgerDelete delete = oracleSyncLedgerDelete(obj);
ResponseEntity<String> userEntity = RestTemplateUtil.post(urlDelete, delete, String.class);
}
}*/
return true;
}
@@ -2278,9 +2461,7 @@ public class TerminalBaseServiceImpl extends ServiceImpl<LineMapper, Line> imple
} else {
overlimit.setUvoltageDev(lineParam.getUvoltageDev());
}
//Overlimit overlimit = new Overlimit(line.getId(), scaTmp, lineDetail.getShortCapacity(), lineDetail.getStandardCapacity(), lineDetail.getDealCapacity(), lineDetail.getDevCapacity());
overlimitMapper.deleteById(line.getId());
overlimit.setId(line.getId());
overlimitMapper.insert(overlimit);
DeptLine deptLine = new DeptLine();
@@ -2339,9 +2520,9 @@ public class TerminalBaseServiceImpl extends ServiceImpl<LineMapper, Line> imple
* 处理项目,判断数据库中是否已存在,存在则保留其索引,不存在则插入新纪录
*/
String projectName = oracleTerminalExcel.getProjectName();
temp = queryLine(lineLambdaQueryWrapper, projectName, "0", LineBaseEnum.PROJECT_LEVEL.getCode(), DataStateEnum.ENABLE.getCode());
temp = queryLine(lineLambdaQueryWrapper, projectName, "0", PROJECT_LEVEL.getCode(), DataStateEnum.ENABLE.getCode());
if (Objects.isNull(temp)) {
temp = assembleLine(projectName, LineBaseEnum.PROJECT_LEVEL.getCode(), "0", Stream.of("0").collect(Collectors.toList()));
temp = assembleLine(projectName, PROJECT_LEVEL.getCode(), "0", Stream.of("0").collect(Collectors.toList()));
this.baseMapper.insert(temp);
}
//添加项目索引
@@ -2357,9 +2538,9 @@ public class TerminalBaseServiceImpl extends ServiceImpl<LineMapper, Line> imple
oracleTerminalExcelMsg.add(assembleMsg(oracleTerminalExcel, "省会名称不存在,请联系管理员"));
continue;
}
temp = queryLine(lineLambdaQueryWrapper, area.getId(), pids.get(LineBaseEnum.PROJECT_LEVEL.getCode()), LineBaseEnum.PROVINCE_LEVEL.getCode(), DataStateEnum.ENABLE.getCode());
temp = queryLine(lineLambdaQueryWrapper, area.getId(), pids.get(PROJECT_LEVEL.getCode()), PROVINCE_LEVEL.getCode(), DataStateEnum.ENABLE.getCode());
if (Objects.isNull(temp)) {
temp = assembleLine(area.getId(), LineBaseEnum.PROVINCE_LEVEL.getCode(), pids.get(LineBaseEnum.PROJECT_LEVEL.getCode()), pids);
temp = assembleLine(area.getId(), PROVINCE_LEVEL.getCode(), pids.get(PROJECT_LEVEL.getCode()), pids);
this.baseMapper.insert(temp);
}
//添加省会索引
@@ -2368,9 +2549,9 @@ public class TerminalBaseServiceImpl extends ServiceImpl<LineMapper, Line> imple
* 处理供电公司,判断数据库中是否已存在,存在则保留其索引,不存在则插入新纪录
*/
String gdName = oracleTerminalExcel.getGdName();
temp = queryLine(lineLambdaQueryWrapper, gdName, pids.get(LineBaseEnum.PROVINCE_LEVEL.getCode()), LineBaseEnum.GD_LEVEL.getCode(), DataStateEnum.ENABLE.getCode());
temp = queryLine(lineLambdaQueryWrapper, gdName, pids.get(PROVINCE_LEVEL.getCode()), GD_LEVEL.getCode(), DataStateEnum.ENABLE.getCode());
if (Objects.isNull(temp)) {
temp = assembleLine(gdName, LineBaseEnum.GD_LEVEL.getCode(), pids.get(LineBaseEnum.PROVINCE_LEVEL.getCode()), pids);
temp = assembleLine(gdName, GD_LEVEL.getCode(), pids.get(PROVINCE_LEVEL.getCode()), pids);
this.baseMapper.insert(temp);
}
//添加供电公司索引
@@ -2381,9 +2562,9 @@ public class TerminalBaseServiceImpl extends ServiceImpl<LineMapper, Line> imple
* 2、变电站的电压等级如果字典表不存在则自动录入
*/
String substationName = oracleTerminalExcel.getSubstationName();
temp = queryLine(lineLambdaQueryWrapper, substationName, pids.get(LineBaseEnum.GD_LEVEL.getCode()), LineBaseEnum.SUB_LEVEL.getCode(), DataStateEnum.ENABLE.getCode());
temp = queryLine(lineLambdaQueryWrapper, substationName, pids.get(GD_LEVEL.getCode()), LineBaseEnum.SUB_LEVEL.getCode(), DataStateEnum.ENABLE.getCode());
if (Objects.isNull(temp)) {
temp = assembleLine(substationName, LineBaseEnum.SUB_LEVEL.getCode(), pids.get(LineBaseEnum.GD_LEVEL.getCode()), pids);
temp = assembleLine(substationName, LineBaseEnum.SUB_LEVEL.getCode(), pids.get(GD_LEVEL.getCode()), pids);
this.baseMapper.insert(temp);
//处理电压等级字典表
DictData substationScale = dicDataFeignClient.getDicDataByNameAndTypeName(DicDataTypeEnum.DEV_VOLTAGE_STAND.getName(), oracleTerminalExcel.getSubStationScale()).getData();
@@ -2830,9 +3011,9 @@ public class TerminalBaseServiceImpl extends ServiceImpl<LineMapper, Line> imple
* 处理项目,判断数据库中是否已存在,存在则保留其索引,不存在则插入新纪录
*/
String projectName = terminalBaseExcel.getProjectName();
temp = queryLine(lineLambdaQueryWrapper, projectName, "0", LineBaseEnum.PROJECT_LEVEL.getCode(), DataStateEnum.ENABLE.getCode());
temp = queryLine(lineLambdaQueryWrapper, projectName, "0", PROJECT_LEVEL.getCode(), DataStateEnum.ENABLE.getCode());
if (Objects.isNull(temp)) {
temp = assembleLine(projectName, LineBaseEnum.PROJECT_LEVEL.getCode(), "0", Stream.of("0").collect(Collectors.toList()));
temp = assembleLine(projectName, PROJECT_LEVEL.getCode(), "0", Stream.of("0").collect(Collectors.toList()));
this.baseMapper.insert(temp);
}
//添加项目索引
@@ -2848,9 +3029,9 @@ public class TerminalBaseServiceImpl extends ServiceImpl<LineMapper, Line> imple
terminalBaseExcelMsgs.add(assembleBaseMsg(terminalBaseExcel, "省会名称不存在,请联系管理员"));
continue;
}
temp = queryLine(lineLambdaQueryWrapper, area.getId(), pids.get(LineBaseEnum.PROJECT_LEVEL.getCode()), LineBaseEnum.PROVINCE_LEVEL.getCode(), DataStateEnum.ENABLE.getCode());
temp = queryLine(lineLambdaQueryWrapper, area.getId(), pids.get(PROJECT_LEVEL.getCode()), PROVINCE_LEVEL.getCode(), DataStateEnum.ENABLE.getCode());
if (Objects.isNull(temp)) {
temp = assembleLine(area.getId(), LineBaseEnum.PROVINCE_LEVEL.getCode(), pids.get(LineBaseEnum.PROJECT_LEVEL.getCode()), pids);
temp = assembleLine(area.getId(), PROVINCE_LEVEL.getCode(), pids.get(PROJECT_LEVEL.getCode()), pids);
this.baseMapper.insert(temp);
}
//添加省会索引
@@ -2859,9 +3040,9 @@ public class TerminalBaseServiceImpl extends ServiceImpl<LineMapper, Line> imple
* 处理供电公司,判断数据库中是否已存在,存在则保留其索引,不存在则插入新纪录
*/
String gdName = terminalBaseExcel.getGdName();
temp = queryLine(lineLambdaQueryWrapper, gdName, pids.get(LineBaseEnum.PROVINCE_LEVEL.getCode()), LineBaseEnum.GD_LEVEL.getCode(), DataStateEnum.ENABLE.getCode());
temp = queryLine(lineLambdaQueryWrapper, gdName, pids.get(PROVINCE_LEVEL.getCode()), GD_LEVEL.getCode(), DataStateEnum.ENABLE.getCode());
if (Objects.isNull(temp)) {
temp = assembleLine(gdName, LineBaseEnum.GD_LEVEL.getCode(), pids.get(LineBaseEnum.PROVINCE_LEVEL.getCode()), pids);
temp = assembleLine(gdName, GD_LEVEL.getCode(), pids.get(PROVINCE_LEVEL.getCode()), pids);
this.baseMapper.insert(temp);
}
//添加供电公司索引
@@ -2871,9 +3052,9 @@ public class TerminalBaseServiceImpl extends ServiceImpl<LineMapper, Line> imple
* 1、判断是否存在不存在则插入
*/
String substationName = terminalBaseExcel.getSubstationName();
temp = queryLine(lineLambdaQueryWrapper, substationName, pids.get(LineBaseEnum.GD_LEVEL.getCode()), LineBaseEnum.SUB_LEVEL.getCode(), DataStateEnum.ENABLE.getCode());
temp = queryLine(lineLambdaQueryWrapper, substationName, pids.get(GD_LEVEL.getCode()), LineBaseEnum.SUB_LEVEL.getCode(), DataStateEnum.ENABLE.getCode());
if (Objects.isNull(temp)) {
temp = assembleLine(substationName, LineBaseEnum.SUB_LEVEL.getCode(), pids.get(LineBaseEnum.GD_LEVEL.getCode()), pids);
temp = assembleLine(substationName, LineBaseEnum.SUB_LEVEL.getCode(), pids.get(GD_LEVEL.getCode()), pids);
//处理电压等级字典表
DictData substationScale = dicDataFeignClient.getDicDataByNameAndType(terminalBaseExcel.getSubStationScale(), DicDataTypeEnum.DEV_VOLTAGE_STAND.getName()).getData();
if (Objects.isNull(substationScale)) {
@@ -3759,5 +3940,42 @@ public class TerminalBaseServiceImpl extends ServiceImpl<LineMapper, Line> imple
}
/**
* 终端日志记录
*/
private void terminalLogsCat(List<Line> logsList,Integer operateType){
String op;
switch (operateType){
case 0:
op = "新增";
break;
case 1:
op = "修改";
break;
case 2:
op = "删除";
break;
default:
op="未知";
break;
}
String name = RequestUtil.getUserNickname();
if(CollUtil.isNotEmpty(logsList)){
for(Line line : logsList){
PqsTerminalLogs pqsTerminalLogs = new PqsTerminalLogs();
pqsTerminalLogs.setLogsType(line.getId());
pqsTerminalLogs.setTerminalType(line.getLevel());
pqsTerminalLogs.setTerminalDescribe(name+"进行"+op+(Objects.equals(line.getLevel(), LineBaseEnum.LINE_LEVEL.getCode()) ? LineBaseEnum.LINE_LEVEL.getMessage():LineBaseEnum.DEVICE_LEVEL.getMessage())+"操作;监测点名称:"+line.getName());
pqsTerminalLogs.setState(DataStateEnum.ENABLE.getCode());
pqsTerminalLogs.setIsPush(DataStateEnum.ENABLE.getCode());
pqsTerminalLogs.setObjIndex(line.getId());
iPqsTerminalLogsService.save(pqsTerminalLogs);
}
}
}
}

View File

@@ -5,9 +5,11 @@ import cn.hutool.core.collection.CollectionUtil;
import cn.hutool.core.date.DateUtil;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.njcn.common.pojo.dto.SimpleDTO;
import com.njcn.common.pojo.enums.common.DataStateEnum;
import com.njcn.common.pojo.enums.response.CommonResponseEnum;
import com.njcn.common.pojo.exception.BusinessException;
import com.njcn.common.pojo.response.HttpResult;
import com.njcn.device.pq.enums.LineBaseEnum;
import com.njcn.device.pq.mapper.DevFuctionMapper;
import com.njcn.device.pq.mapper.TerminalMaintainMapper;
import com.njcn.device.pq.mapper.SuperDataMapper;
@@ -197,10 +199,11 @@ public class TerminalMaintainServiceImpl implements TerminalMaintainService {
PqsTerminalLogs terminalLogsNew = new PqsTerminalLogs();
terminalLogsNew.setObjIndex(device.getId());
terminalLogsNew.setTerminalDescribe(sb.toString());
terminalLogsNew.setCreateBy(index);
terminalLogsNew.setCreateTime(LocalDateTime.now());
terminalLogsNew.setTerminalType(data.getId());
terminalLogsNew.setState(1);
terminalLogsNew.setIsPush(DataStateEnum.ENABLE.getCode());
terminalLogsNew.setOperateType("update");
terminalLogsNew.setLogsType(data.getId());
terminalLogsNew.setTerminalType(LineBaseEnum.DEVICE_LEVEL.getCode());
terminalLogsNew.setState(DataStateEnum.ENABLE.getCode());
iPqsTerminalLogsService.save(terminalLogsNew);
}
}
@@ -252,7 +255,8 @@ public class TerminalMaintainServiceImpl implements TerminalMaintainService {
terminalLogsNew.setTerminalDescribe(sb.toString());
terminalLogsNew.setCreateBy(index);
terminalLogsNew.setCreateTime(LocalDateTime.now());
terminalLogsNew.setTerminalType(data.getId());
terminalLogsNew.setTerminalType(LineBaseEnum.LINE_LEVEL.getCode());
terminalLogsNew.setLogsType(data.getId());
terminalLogsNew.setState(1);
iPqsTerminalLogsService.save(terminalLogsNew);
}

View File

@@ -201,7 +201,7 @@ public class UserServiceImpl extends ServiceImpl<UserMapper, User> implements IU
boolean result = userRoleService.addUserRole(user.getId(), addUserParam.getRole());
if (result) {
//获取用户信息
String userName = RequestUtil.getUsername();
/* String userName = RequestUtil.getUsername();
String index = RequestUtil.getUserIndex();
String describe = userName + "新增了" + user.getName() + "用户";
HttpResult<DictData> dicDataByCode = dicDataFeignClient.getDicDataByCode(DicDataEnum.WEB_ADD.getCode());
@@ -213,7 +213,7 @@ public class UserServiceImpl extends ServiceImpl<UserMapper, User> implements IU
terminalLogsNew.setCreateBy(index);
terminalLogsNew.setCreateTime(LocalDateTime.now());
terminalLogsNew.setTerminalType(data.getId());
terminalLogsNew.setState(DataStateEnum.ENABLE.getCode());
terminalLogsNew.setState(DataStateEnum.ENABLE.getCode());*/
return true;
} else {
return false;