告警参数和辅控逻辑优化
This commit is contained in:
parent
68b03ba53f
commit
b1ec3216a3
@ -2,6 +2,7 @@ package com.yfd.platform.modules.auxcontrol.controller;
|
|||||||
|
|
||||||
import cn.hutool.core.util.ObjectUtil;
|
import cn.hutool.core.util.ObjectUtil;
|
||||||
import cn.hutool.core.util.StrUtil;
|
import cn.hutool.core.util.StrUtil;
|
||||||
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||||
import com.yfd.platform.annotation.Log;
|
import com.yfd.platform.annotation.Log;
|
||||||
import com.yfd.platform.config.ResponseResult;
|
import com.yfd.platform.config.ResponseResult;
|
||||||
import com.yfd.platform.modules.auxcontrol.domain.DeviceAlarmParameter;
|
import com.yfd.platform.modules.auxcontrol.domain.DeviceAlarmParameter;
|
||||||
@ -30,6 +31,29 @@ public class DeviceAlarmParameterController {
|
|||||||
@Resource
|
@Resource
|
||||||
private IDeviceAlarmParameterService deviceAlarmParameterService;
|
private IDeviceAlarmParameterService deviceAlarmParameterService;
|
||||||
|
|
||||||
|
|
||||||
|
/**********************************
|
||||||
|
* 用途说明: 分页查询变电站辅控设备告警参数设置
|
||||||
|
* 参数说明
|
||||||
|
* alarmType 告警类型
|
||||||
|
* alarmLevel 告警等级
|
||||||
|
* deviceId 设备ID
|
||||||
|
* signalId 信号id
|
||||||
|
* pageNum 当前页
|
||||||
|
* 返回值说明: com.yfd.platform.config.ResponseResult 返回分页查询结果
|
||||||
|
***********************************/
|
||||||
|
@GetMapping("/page")
|
||||||
|
@ApiOperation("分页查询变电站辅控设备告警参数设置")
|
||||||
|
public ResponseResult getDeviceAlarmParameterPage(String meterDeviceId, String signalId, String alarmType, String alarmLevel, Page<DeviceAlarmParameter> page) {
|
||||||
|
//参数校验 设备id 信号id不能为空
|
||||||
|
if (StrUtil.isBlank(meterDeviceId) || StrUtil.isBlank(signalId)) {
|
||||||
|
return ResponseResult.error("参数为空");
|
||||||
|
}
|
||||||
|
//分页查询
|
||||||
|
Page<DeviceAlarmParameter> deviceAlarmParameterPage = deviceAlarmParameterService.getDeviceAlarmParameterPage(meterDeviceId, signalId, alarmType, alarmLevel, page);
|
||||||
|
return ResponseResult.successData(deviceAlarmParameterPage);
|
||||||
|
}
|
||||||
|
|
||||||
/***********************************
|
/***********************************
|
||||||
* 用途说明:新增变电站辅控设备信息
|
* 用途说明:新增变电站辅控设备信息
|
||||||
* 参数说明
|
* 参数说明
|
||||||
|
@ -49,12 +49,12 @@ public class DeviceSignalController {
|
|||||||
***********************************/
|
***********************************/
|
||||||
@GetMapping("/page")
|
@GetMapping("/page")
|
||||||
@ApiOperation("分页查询变电站辅控设备信号")
|
@ApiOperation("分页查询变电站辅控设备信号")
|
||||||
public ResponseResult getDeviceSignalPage(String mainDeviceId, String componentId, String signalName, Page<DeviceSignal> page) {
|
public ResponseResult getDeviceSignalPage(String mainDeviceId, String mainComponentId, String signalName, Page<DeviceSignal> page) {
|
||||||
//参数校验 辅控设备ID不能为空
|
//参数校验 辅控设备ID不能为空
|
||||||
if (StrUtil.isBlank(componentId)) {
|
if (StrUtil.isBlank(mainComponentId)) {
|
||||||
return ResponseResult.error("参数为空");
|
return ResponseResult.error("参数为空");
|
||||||
}
|
}
|
||||||
Page<DeviceSignal> deviceSignalPage = deviceSignalService.getDeviceSignalPage(mainDeviceId,componentId, signalName, page);
|
Page<DeviceSignal> deviceSignalPage = deviceSignalService.getDeviceSignalPage(mainDeviceId,mainComponentId, signalName, page);
|
||||||
return ResponseResult.successData(deviceSignalPage);
|
return ResponseResult.successData(deviceSignalPage);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -35,6 +35,11 @@ public class DeviceSignal implements Serializable {
|
|||||||
@TableId(type = IdType.ASSIGN_UUID)
|
@TableId(type = IdType.ASSIGN_UUID)
|
||||||
private String signalId;
|
private String signalId;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 所属系统:01-在线监测 02-消防系统 03-安防系统 04-动环系统 05-锁控系统 06-辅控系统 07-照明系统
|
||||||
|
*/
|
||||||
|
private String systemcode;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 辅控设备ID--fk_meter_device
|
* 辅控设备ID--fk_meter_device
|
||||||
*/
|
*/
|
||||||
|
@ -1,5 +1,6 @@
|
|||||||
package com.yfd.platform.modules.auxcontrol.mapper;
|
package com.yfd.platform.modules.auxcontrol.mapper;
|
||||||
|
|
||||||
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||||
import com.yfd.platform.modules.auxcontrol.domain.DeviceAlarmParameter;
|
import com.yfd.platform.modules.auxcontrol.domain.DeviceAlarmParameter;
|
||||||
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||||
|
|
||||||
@ -13,4 +14,6 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
|||||||
*/
|
*/
|
||||||
public interface DeviceAlarmParameterMapper extends BaseMapper<DeviceAlarmParameter> {
|
public interface DeviceAlarmParameterMapper extends BaseMapper<DeviceAlarmParameter> {
|
||||||
|
|
||||||
|
Page<DeviceAlarmParameter> getDeviceAlarmParameterPage(String meterDeviceId, String signalId, String alarmType, String alarmLevel, Page<DeviceAlarmParameter> page);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -1,5 +1,6 @@
|
|||||||
package com.yfd.platform.modules.auxcontrol.service;
|
package com.yfd.platform.modules.auxcontrol.service;
|
||||||
|
|
||||||
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||||
import com.yfd.platform.modules.auxcontrol.domain.DeviceAlarmParameter;
|
import com.yfd.platform.modules.auxcontrol.domain.DeviceAlarmParameter;
|
||||||
import com.baomidou.mybatisplus.extension.service.IService;
|
import com.baomidou.mybatisplus.extension.service.IService;
|
||||||
|
|
||||||
@ -27,4 +28,6 @@ public interface IDeviceAlarmParameterService extends IService<DeviceAlarmParame
|
|||||||
***********************************/
|
***********************************/
|
||||||
boolean updateDeviceAlarmParameter(DeviceAlarmParameter deviceAlarmParameter);
|
boolean updateDeviceAlarmParameter(DeviceAlarmParameter deviceAlarmParameter);
|
||||||
|
|
||||||
|
Page<DeviceAlarmParameter> getDeviceAlarmParameterPage(String meterDeviceId, String signalId, String alarmType, String alarmLevel, Page<DeviceAlarmParameter> page);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -1,11 +1,14 @@
|
|||||||
package com.yfd.platform.modules.auxcontrol.service.impl;
|
package com.yfd.platform.modules.auxcontrol.service.impl;
|
||||||
|
|
||||||
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||||
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||||
import com.yfd.platform.modules.auxcontrol.domain.DeviceAlarmParameter;
|
import com.yfd.platform.modules.auxcontrol.domain.DeviceAlarmParameter;
|
||||||
import com.yfd.platform.modules.auxcontrol.mapper.DeviceAlarmParameterMapper;
|
import com.yfd.platform.modules.auxcontrol.mapper.DeviceAlarmParameterMapper;
|
||||||
import com.yfd.platform.modules.auxcontrol.service.IDeviceAlarmParameterService;
|
import com.yfd.platform.modules.auxcontrol.service.IDeviceAlarmParameterService;
|
||||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
|
||||||
import org.springframework.stereotype.Service;
|
import org.springframework.stereotype.Service;
|
||||||
|
|
||||||
|
import javax.annotation.Resource;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* <p>
|
* <p>
|
||||||
* 变电站-辅控设备-告警参数设置 服务实现类
|
* 变电站-辅控设备-告警参数设置 服务实现类
|
||||||
@ -17,6 +20,9 @@ import org.springframework.stereotype.Service;
|
|||||||
@Service
|
@Service
|
||||||
public class DeviceAlarmParameterServiceImpl extends ServiceImpl<DeviceAlarmParameterMapper, DeviceAlarmParameter> implements IDeviceAlarmParameterService {
|
public class DeviceAlarmParameterServiceImpl extends ServiceImpl<DeviceAlarmParameterMapper, DeviceAlarmParameter> implements IDeviceAlarmParameterService {
|
||||||
|
|
||||||
|
@Resource
|
||||||
|
private DeviceAlarmParameterMapper deviceAlarmParameterMapper;
|
||||||
|
|
||||||
/**********************************
|
/**********************************
|
||||||
* 用途说明: 新增辅控设备告警参数
|
* 用途说明: 新增辅控设备告警参数
|
||||||
* 参数说明 deviceAlarmParameter 告警参数对象
|
* 参数说明 deviceAlarmParameter 告警参数对象
|
||||||
@ -36,4 +42,13 @@ public class DeviceAlarmParameterServiceImpl extends ServiceImpl<DeviceAlarmPara
|
|||||||
public boolean updateDeviceAlarmParameter(DeviceAlarmParameter deviceAlarmParameter) {
|
public boolean updateDeviceAlarmParameter(DeviceAlarmParameter deviceAlarmParameter) {
|
||||||
return this.saveOrUpdate(deviceAlarmParameter);
|
return this.saveOrUpdate(deviceAlarmParameter);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public Page<DeviceAlarmParameter> getDeviceAlarmParameterPage(String meterDeviceId, String signalId,
|
||||||
|
String alarmType, String alarmLevel,
|
||||||
|
Page<DeviceAlarmParameter> page) {
|
||||||
|
Page<DeviceAlarmParameter> deviceAlarmParameterPage = deviceAlarmParameterMapper.getDeviceAlarmParameterPage(meterDeviceId, signalId, alarmType, alarmLevel
|
||||||
|
, page);
|
||||||
|
return deviceAlarmParameterPage;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@ -4,6 +4,7 @@ import cn.hutool.core.convert.Convert;
|
|||||||
import cn.hutool.core.util.ObjectUtil;
|
import cn.hutool.core.util.ObjectUtil;
|
||||||
import cn.hutool.core.util.StrUtil;
|
import cn.hutool.core.util.StrUtil;
|
||||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||||
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||||
import com.yfd.platform.modules.auxcontrol.domain.DeviceSignal;
|
import com.yfd.platform.modules.auxcontrol.domain.DeviceSignal;
|
||||||
import com.yfd.platform.modules.auxcontrol.mapper.DeviceSignalMapper;
|
import com.yfd.platform.modules.auxcontrol.mapper.DeviceSignalMapper;
|
||||||
@ -89,16 +90,34 @@ public class DeviceSignalServiceImpl extends ServiceImpl<DeviceSignalMapper, Dev
|
|||||||
***********************************/
|
***********************************/
|
||||||
@Override
|
@Override
|
||||||
public boolean addDeviceSignal(DeviceSignal deviceSignal) {
|
public boolean addDeviceSignal(DeviceSignal deviceSignal) {
|
||||||
deviceSignal.setLastmodifier(SecurityUtils.getCurrentUsername());
|
String componentId = deviceSignal.getMainComponentId();
|
||||||
deviceSignal.setLastmodifydate(new Timestamp(System.currentTimeMillis()));
|
if (StrUtil.isBlank(componentId)) {
|
||||||
String compnentId = deviceSignal.getMainComponentId();
|
throw new RuntimeException("部件信息不能为空");
|
||||||
if (StrUtil.isNotBlank(compnentId)) {
|
}
|
||||||
SubstationComponent substationComponent = substationComponentMapper.selectById(compnentId);
|
SubstationComponent substationComponent = substationComponentMapper.selectById(componentId);
|
||||||
if (substationComponent == null) {
|
if (substationComponent == null) {
|
||||||
throw new RuntimeException("当前部件不存在");
|
throw new RuntimeException("当前部件不存在");
|
||||||
}
|
}
|
||||||
deviceSignal.setMainDeviceId(substationComponent.getMainDeviceId());
|
deviceSignal.setMainDeviceId(substationComponent.getMainDeviceId());
|
||||||
|
LambdaQueryWrapper<DeviceSignal> queryWrapper = new LambdaQueryWrapper<>();
|
||||||
|
queryWrapper.eq(DeviceSignal::getMainComponentId, deviceSignal.getMainComponentId());
|
||||||
|
int count = deviceSignalMapper.selectCount(queryWrapper);
|
||||||
|
//序号加1
|
||||||
|
int orderNo = count + 1;
|
||||||
|
deviceSignal.setOrderno(orderNo);
|
||||||
|
|
||||||
|
String signalCode = deviceSignal.getSignalCode();
|
||||||
|
if (StrUtil.isBlank(signalCode)) {
|
||||||
|
throw new RuntimeException("信号编号不能为空");
|
||||||
}
|
}
|
||||||
|
LambdaQueryWrapper<DeviceSignal> signalCodeWrapper = new LambdaQueryWrapper<>();
|
||||||
|
signalCodeWrapper.eq(DeviceSignal::getSignalCode, signalCode);
|
||||||
|
int signalCount = deviceSignalMapper.selectCount(signalCodeWrapper);
|
||||||
|
if (signalCount > 0) {
|
||||||
|
throw new RuntimeException("当前信号编号已存在");
|
||||||
|
}
|
||||||
|
deviceSignal.setLastmodifier(SecurityUtils.getCurrentUsername());
|
||||||
|
deviceSignal.setLastmodifydate(new Timestamp(System.currentTimeMillis()));
|
||||||
return this.saveOrUpdate(deviceSignal);
|
return this.saveOrUpdate(deviceSignal);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -109,8 +128,7 @@ public class DeviceSignalServiceImpl extends ServiceImpl<DeviceSignalMapper, Dev
|
|||||||
***********************************/
|
***********************************/
|
||||||
@Override
|
@Override
|
||||||
public boolean updateDeviceSignal(DeviceSignal deviceSignal) {
|
public boolean updateDeviceSignal(DeviceSignal deviceSignal) {
|
||||||
deviceSignal.setLastmodifier(SecurityUtils.getCurrentUsername());
|
|
||||||
deviceSignal.setLastmodifydate(new Timestamp(System.currentTimeMillis()));
|
|
||||||
String componentId = deviceSignal.getMainComponentId();
|
String componentId = deviceSignal.getMainComponentId();
|
||||||
if (StrUtil.isNotBlank(componentId)) {
|
if (StrUtil.isNotBlank(componentId)) {
|
||||||
SubstationComponent substationComponent = substationComponentMapper.selectById(componentId);
|
SubstationComponent substationComponent = substationComponentMapper.selectById(componentId);
|
||||||
@ -119,6 +137,17 @@ public class DeviceSignalServiceImpl extends ServiceImpl<DeviceSignalMapper, Dev
|
|||||||
}
|
}
|
||||||
deviceSignal.setMainDeviceId(substationComponent.getMainDeviceId());
|
deviceSignal.setMainDeviceId(substationComponent.getMainDeviceId());
|
||||||
}
|
}
|
||||||
|
String signalCode = deviceSignal.getSignalCode();
|
||||||
|
if (StrUtil.isNotBlank(signalCode)) {
|
||||||
|
LambdaQueryWrapper<DeviceSignal> signalCodeWrapper = new LambdaQueryWrapper<>();
|
||||||
|
signalCodeWrapper.ne(DeviceSignal::getSignalId, deviceSignal.getSignalId()).eq(DeviceSignal::getSignalCode, signalCode);
|
||||||
|
int signalCount = deviceSignalMapper.selectCount(signalCodeWrapper);
|
||||||
|
if (signalCount > 0) {
|
||||||
|
throw new RuntimeException("当前信号编号已存在");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
deviceSignal.setLastmodifier(SecurityUtils.getCurrentUsername());
|
||||||
|
deviceSignal.setLastmodifydate(new Timestamp(System.currentTimeMillis()));
|
||||||
return this.saveOrUpdate(deviceSignal);
|
return this.saveOrUpdate(deviceSignal);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -138,7 +138,6 @@ public class GatewayDeviceServiceImpl extends ServiceImpl<GatewayDeviceMapper, G
|
|||||||
throw new RuntimeException("当前ip已经有网关机绑定");
|
throw new RuntimeException("当前ip已经有网关机绑定");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (StrUtil.isNotBlank(gatewayDevice.getIpAddr()) && !Validator.isIpv4(gatewayDevice.getIpAddr())) {
|
if (StrUtil.isNotBlank(gatewayDevice.getIpAddr()) && !Validator.isIpv4(gatewayDevice.getIpAddr())) {
|
||||||
throw new RuntimeException("当前ip地址不规范");
|
throw new RuntimeException("当前ip地址不规范");
|
||||||
}
|
}
|
||||||
|
@ -2,4 +2,43 @@
|
|||||||
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
||||||
<mapper namespace="com.yfd.platform.modules.auxcontrol.mapper.DeviceAlarmParameterMapper">
|
<mapper namespace="com.yfd.platform.modules.auxcontrol.mapper.DeviceAlarmParameterMapper">
|
||||||
|
|
||||||
|
<select id="getDeviceAlarmParameterPage"
|
||||||
|
resultType="com.yfd.platform.modules.auxcontrol.domain.DeviceAlarmParameter">
|
||||||
|
|
||||||
|
SELECT
|
||||||
|
dap.*,
|
||||||
|
sdi1.dictname AS alarmTypeName,
|
||||||
|
sdi2.dictname AS alarmLevelName,
|
||||||
|
COALESCE (
|
||||||
|
(
|
||||||
|
SELECT
|
||||||
|
GROUP_CONCAT( dictname ORDER BY itemcode SEPARATOR ',' )
|
||||||
|
FROM
|
||||||
|
sys_dictionary_items
|
||||||
|
WHERE
|
||||||
|
dictid = 'd3a5c69ef214012abcdb31495ef4e772'
|
||||||
|
AND FIND_IN_SET( itemcode, dap.notice_type ) > 0
|
||||||
|
),
|
||||||
|
''
|
||||||
|
) AS noticeTypeName
|
||||||
|
FROM
|
||||||
|
fk_device_alarm_parameter dap
|
||||||
|
LEFT JOIN sys_dictionary_items sdi1 ON sdi1.dictid = 'aad92e9fd54d05e090b074f3e0666c8c'
|
||||||
|
AND sdi1.itemcode = dap.alarm_type
|
||||||
|
LEFT JOIN sys_dictionary_items sdi2 ON sdi2.dictid = '138d15a0ce89e5abd516389a1176db6e'
|
||||||
|
AND sdi2.itemcode = dap.alarm_level
|
||||||
|
WHERE 1 =1
|
||||||
|
<if test="signalId != null and signalId != ''">
|
||||||
|
and dap.signal_id= #{signalId}
|
||||||
|
</if>
|
||||||
|
<if test="meterDeviceId != null and meterDeviceId != ''">
|
||||||
|
and dap.device_id= #{meterDeviceId}
|
||||||
|
</if>
|
||||||
|
<if test="alarmType != null and alarmType != ''">
|
||||||
|
and dap.alarm_type= #{alarmType}
|
||||||
|
</if>
|
||||||
|
<if test="alarmLevel != null and alarmLevel != ''">
|
||||||
|
and dap.alarm_level= #{alarmLevel}
|
||||||
|
</if>
|
||||||
|
</select>
|
||||||
</mapper>
|
</mapper>
|
||||||
|
Loading…
Reference in New Issue
Block a user