|
|
|
|
USE `data_center_aeon_admin`;
|
|
|
|
|
|
|
|
|
|
/*Table structure for table `device_alert_template` */
|
|
|
|
|
|
|
|
|
|
DROP TABLE IF EXISTS `device_alert_template`;
|
|
|
|
|
|
|
|
|
|
CREATE TABLE `device_alert_template` (
|
|
|
|
|
`id` bigint NOT NULL AUTO_INCREMENT,
|
|
|
|
|
`company_id` bigint DEFAULT NULL,
|
|
|
|
|
`tmpl_name` varchar(100) DEFAULT NULL,
|
|
|
|
|
`level` varchar(20) DEFAULT NULL COMMENT '告警级别',
|
|
|
|
|
`message` varchar(999) DEFAULT NULL COMMENT '告警信息',
|
|
|
|
|
`flag` int DEFAULT '0' COMMENT '0 开启,1关闭',
|
|
|
|
|
`template_defs` varchar(999) DEFAULT NULL COMMENT '模板定义',
|
|
|
|
|
`forward_type` varchar(20) CHARACTER SET utf8 COLLATE utf8_general_ci DEFAULT NULL COMMENT '转发类型api, mail, sms',
|
|
|
|
|
`alert_cancel_template_defs` varchar(999) DEFAULT '' COMMENT '告警解除模板定义',
|
|
|
|
|
`alert_cancel_message` varchar(999) DEFAULT '' COMMENT '告警解除模板初步填充后内容',
|
|
|
|
|
`alert_title` varchar(999) DEFAULT NULL,
|
|
|
|
|
`alert_cancel_title` varchar(999) DEFAULT NULL,
|
|
|
|
|
`alert_recipient_mail` varchar(1000) DEFAULT NULL COMMENT '邮件通知对象',
|
|
|
|
|
`alert_recipient_sms` varchar(1000) DEFAULT NULL COMMENT '短信通知对象',
|
|
|
|
|
PRIMARY KEY (`id`)
|
|
|
|
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb3 COMMENT='设备告警信息';
|
|
|
|
|
|
|
|
|
|
/*Table structure for table `device_alert_template_bind` */
|
|
|
|
|
|
|
|
|
|
DROP TABLE IF EXISTS `device_alert_template_bind`;
|
|
|
|
|
|
|
|
|
|
CREATE TABLE `device_alert_template_bind` (
|
|
|
|
|
`device_info_id` int NOT NULL COMMENT 'device_info表里的id',
|
|
|
|
|
`device_alert_template_id` bigint NOT NULL
|
|
|
|
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb3;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/** 旧的设备的告警配置,插入到模板去 **/
|
|
|
|
|
USE `data_center_aeon_admin`;
|
|
|
|
|
|
|
|
|
|
DROP procedure IF EXISTS `data_center_aeon_admin`.`add_tmpl`;
|
|
|
|
|
|
|
|
|
|
DELIMITER $$
|
|
|
|
|
|
|
|
|
|
CREATE PROCEDURE add_tmpl()
|
|
|
|
|
BEGIN
|
|
|
|
|
DECLARE done INT DEFAULT 0;
|
|
|
|
|
DECLARE config_id , new_template_id INT;
|
|
|
|
|
DECLARE alert_name_val VARCHAR(999);
|
|
|
|
|
DECLARE template_defs_val VARCHAR(999);
|
|
|
|
|
DECLARE message_val VARCHAR(999);
|
|
|
|
|
DECLARE alert_cancel_template_defs_val VARCHAR(999);
|
|
|
|
|
DECLARE alert_cancel_message_val VARCHAR(999);
|
|
|
|
|
DECLARE alert_title_val VARCHAR(255);
|
|
|
|
|
DECLARE alert_cancel_title_val VARCHAR(255);
|
|
|
|
|
DECLARE forward_type_val VARCHAR(255);
|
|
|
|
|
DECLARE company_id_val INT;
|
|
|
|
|
|
|
|
|
|
DECLARE config_cursor CURSOR FOR
|
|
|
|
|
SELECT
|
|
|
|
|
dac.device_config_id,
|
|
|
|
|
dac.alert_name,
|
|
|
|
|
dac.template_defs,
|
|
|
|
|
dac.message,
|
|
|
|
|
dac.alert_cancel_template_defs,
|
|
|
|
|
dac.alert_cancel_message,
|
|
|
|
|
dac.alert_title,
|
|
|
|
|
dac.alert_cancel_title,
|
|
|
|
|
dac.forward_type,
|
|
|
|
|
di.company_id
|
|
|
|
|
FROM
|
|
|
|
|
device_alert_config dac
|
|
|
|
|
INNER JOIN device_info di ON dac.device_config_id = di.id
|
|
|
|
|
WHERE dac.flag != 1 AND di.flag != 1;
|
|
|
|
|
DECLARE CONTINUE HANDLER FOR NOT FOUND SET done = 1;
|
|
|
|
|
|
|
|
|
|
OPEN config_cursor;
|
|
|
|
|
|
|
|
|
|
config_loop: LOOP
|
|
|
|
|
FETCH config_cursor INTO
|
|
|
|
|
config_id,
|
|
|
|
|
alert_name_val,
|
|
|
|
|
template_defs_val,
|
|
|
|
|
message_val,
|
|
|
|
|
alert_cancel_template_defs_val,
|
|
|
|
|
alert_cancel_message_val,
|
|
|
|
|
alert_title_val,
|
|
|
|
|
alert_cancel_title_val,
|
|
|
|
|
forward_type_val,
|
|
|
|
|
company_id_val;
|
|
|
|
|
|
|
|
|
|
IF done THEN
|
|
|
|
|
LEAVE config_loop;
|
|
|
|
|
END IF;
|
|
|
|
|
|
|
|
|
|
-- 检查是否已存在相同的记录
|
|
|
|
|
IF NOT EXISTS (
|
|
|
|
|
SELECT 1
|
|
|
|
|
FROM device_alert_template
|
|
|
|
|
WHERE template_defs = template_defs_val
|
|
|
|
|
AND alert_cancel_template_defs = alert_cancel_template_defs_val
|
|
|
|
|
AND alert_title = alert_title_val
|
|
|
|
|
AND alert_cancel_title = alert_cancel_title_val
|
|
|
|
|
AND forward_type = forward_type_val
|
|
|
|
|
AND company_id = company_id_val
|
|
|
|
|
) THEN
|
|
|
|
|
-- 插入新记录
|
|
|
|
|
INSERT INTO device_alert_template (
|
|
|
|
|
tmpl_name,
|
|
|
|
|
template_defs,
|
|
|
|
|
message,
|
|
|
|
|
alert_cancel_template_defs,
|
|
|
|
|
alert_cancel_message,
|
|
|
|
|
alert_title,
|
|
|
|
|
alert_cancel_title,
|
|
|
|
|
forward_type,
|
|
|
|
|
company_id
|
|
|
|
|
) VALUES (
|
|
|
|
|
alert_name_val,
|
|
|
|
|
template_defs_val,
|
|
|
|
|
message_val,
|
|
|
|
|
alert_cancel_template_defs_val,
|
|
|
|
|
alert_cancel_message_val,
|
|
|
|
|
alert_title_val,
|
|
|
|
|
alert_cancel_title_val,
|
|
|
|
|
forward_type_val,
|
|
|
|
|
company_id_val
|
|
|
|
|
);
|
|
|
|
|
|
|
|
|
|
-- 获取刚插入的记录的自增主键值
|
|
|
|
|
SET new_template_id = LAST_INSERT_ID();
|
|
|
|
|
|
|
|
|
|
-- 向device_alert_template_bind表插入对应关系
|
|
|
|
|
INSERT INTO device_alert_template_bind (device_info_id, device_alert_template_id)
|
|
|
|
|
SELECT dac.device_config_id, new_template_id
|
|
|
|
|
FROM device_alert_config dac
|
|
|
|
|
INNER JOIN device_info di ON dac.device_config_id = di.id
|
|
|
|
|
WHERE dac.flag != 1 AND di.flag != 1
|
|
|
|
|
AND dac.template_defs = template_defs_val
|
|
|
|
|
AND dac.alert_cancel_template_defs = alert_cancel_template_defs_val
|
|
|
|
|
AND dac.alert_title = alert_title_val
|
|
|
|
|
AND dac.alert_cancel_title = alert_cancel_title_val
|
|
|
|
|
AND dac.forward_type = forward_type_val
|
|
|
|
|
AND di.company_id = company_id_val;
|
|
|
|
|
|
|
|
|
|
END IF;
|
|
|
|
|
END LOOP;
|
|
|
|
|
|
|
|
|
|
CLOSE config_cursor;
|
|
|
|
|
END $$
|
|
|
|
|
|
|
|
|
|
DELIMITER ;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
CALL add_tmpl();
|
|
|
|
|
|
|
|
|
|
DROP procedure IF EXISTS `data_center_aeon_admin`.`add_tmpl`;
|