This commit is contained in:
xufupo 2024-12-26 19:24:07 +08:00
parent e7fa3576e1
commit 68a065e88d
9869 changed files with 1052903 additions and 0 deletions

36
README.en.md Normal file
View File

@ -0,0 +1,36 @@
# 4x
#### Description
{**When you're done, you can delete the content in this README and update the file with details for others getting started with your repository**}
#### Software Architecture
Software architecture description
#### Installation
1. xxxx
2. xxxx
3. xxxx
#### Instructions
1. xxxx
2. xxxx
3. xxxx
#### Contribution
1. Fork the repository
2. Create Feat_xxx branch
3. Commit your code
4. Create Pull Request
#### Gitee Feature
1. You can use Readme\_XXX.md to support different languages, such as Readme\_en.md, Readme\_zh.md
2. Gitee blog [blog.gitee.com](https://blog.gitee.com)
3. Explore open source project [https://gitee.com/explore](https://gitee.com/explore)
4. The most valuable open source project [GVP](https://gitee.com/gvp)
5. The manual of Gitee [https://gitee.com/help](https://gitee.com/help)
6. The most popular members [https://gitee.com/gitee-stars/](https://gitee.com/gitee-stars/)

View File

@ -1,2 +1,39 @@
# 4x
#### 介绍
{**以下是 Gitee 平台说明,您可以替换此简介**
Gitee 是 OSCHINA 推出的基于 Git 的代码托管平台(同时支持 SVN。专为开发者提供稳定、高效、安全的云端软件开发协作平台
无论是个人、团队、或是企业,都能够用 Gitee 实现代码托管、项目管理、协作开发。企业项目请看 [https://gitee.com/enterprises](https://gitee.com/enterprises)}
#### 软件架构
软件架构说明
#### 安装教程
1. xxxx
2. xxxx
3. xxxx
#### 使用说明
1. xxxx
2. xxxx
3. xxxx
#### 参与贡献
1. Fork 本仓库
2. 新建 Feat_xxx 分支
3. 提交代码
4. 新建 Pull Request
#### 特技
1. 使用 Readme\_XXX.md 来支持不同的语言,例如 Readme\_en.md, Readme\_zh.md
2. Gitee 官方博客 [blog.gitee.com](https://blog.gitee.com)
3. 你可以 [https://gitee.com/explore](https://gitee.com/explore) 这个地址来了解 Gitee 上的优秀开源项目
4. [GVP](https://gitee.com/gvp) 全称是 Gitee 最有价值开源项目,是综合评定出的优秀开源项目
5. Gitee 官方提供的使用手册 [https://gitee.com/help](https://gitee.com/help)
6. Gitee 封面人物是一档用来展示 Gitee 会员风采的栏目 [https://gitee.com/gitee-stars/](https://gitee.com/gitee-stars/)

View File

@ -0,0 +1,189 @@
CREATE TABLE IF NOT EXISTS `data_alarm_device_rel` (
`id` bigint(20) NOT NULL COMMENT 'id',
`alarm_rule_id` bigint(20) DEFAULT NULL,
`device_id` bigint(20) DEFAULT NULL COMMENT '局部告警的设备id',
`access_id` varchar(32) DEFAULT NULL COMMENT '设备接入id',
`sn` varchar(32) DEFAULT NULL COMMENT '设备SN',
`application_id` bigint(20) DEFAULT NULL COMMENT '应用id',
`create_at` bigint(20) DEFAULT NULL,
`update_at` bigint(20) DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='局部告警的设备数据表';
CREATE TABLE IF NOT EXISTS `data_alarm_push` (
`id` bigint(20) NOT NULL COMMENT 'id',
`alarm_rule_id` bigint(20) DEFAULT NULL,
`push_name` varchar(64) DEFAULT NULL COMMENT '通知名称',
`push_type` varchar(20) DEFAULT NULL,
`push_type_name` varchar(20) DEFAULT NULL COMMENT '告警通知方式,系统消息,邮件,短信',
`application_id` bigint(20) DEFAULT NULL COMMENT '应用id',
`tenant_id` bigint(20) DEFAULT NULL,
`always_push` tinyint(1) DEFAULT NULL COMMENT '每次都推送01',
`cycle_number` int(11) DEFAULT NULL COMMENT '每多少条推送一次',
`max_number` int(11) DEFAULT NULL COMMENT '最多多少条结合ignore_number',
`interval_minutes` int(11) DEFAULT NULL COMMENT '间隔分钟数',
`alarm_push_template_id` bigint(20) DEFAULT NULL,
`enable` tinyint(1) DEFAULT NULL COMMENT '是否可用0禁用1可用',
`push_rule` text COMMENT '告警规则',
`create_at` bigint(20) DEFAULT NULL,
`update_at` bigint(20) DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='局部告警的设备数据表';
CREATE TABLE IF NOT EXISTS `data_alarm_push_log` (
`id` bigint(20) NOT NULL,
`alarm_rule_id` bigint(20) DEFAULT NULL,
`alarm_push_id` bigint(20) DEFAULT NULL COMMENT '告警推送配置id',
`alarm_push_template_id` bigint(20) DEFAULT NULL COMMENT '告警推送模板id',
`push_content` text COMMENT '推送内容',
`push_type` varchar(20) DEFAULT NULL COMMENT '推送类型systemsmsemail',
`status` tinyint(1) DEFAULT NULL COMMENT '推送状态0失败1成功',
`indicator_id` bigint(20) DEFAULT NULL COMMENT '监测指标id',
`monitor_point_id` bigint(20) DEFAULT NULL COMMENT '测点id',
`device_id` bigint(20) DEFAULT NULL,
`trigger_type` tinyint(1) DEFAULT NULL COMMENT '触发器类型0设备离线1设备失联2监测要素3监测指标4特征值告警5设备离线比例',
`level` tinyint(1) unsigned DEFAULT '0' COMMENT '告警等级',
`push_time` datetime DEFAULT NULL COMMENT '告警推送时间',
`user_name` varchar(50) DEFAULT NULL COMMENT '用户名称',
`real_name` varchar(50) DEFAULT NULL COMMENT '用户名',
`phone_number` varchar(50) DEFAULT NULL COMMENT '手机号',
`email` varchar(50) DEFAULT NULL COMMENT '邮箱',
`tenant_id` bigint(20) DEFAULT NULL COMMENT '租户id',
`application_id` bigint(20) DEFAULT NULL COMMENT '应用id',
`user_id` bigint(20) DEFAULT NULL,
`wait_number` int(11) DEFAULT '0',
`create_at` bigint(20) DEFAULT NULL COMMENT '推送时间',
`update_at` bigint(20) DEFAULT NULL COMMENT '更新时间',
PRIMARY KEY (`id`) USING BTREE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 ROW_FORMAT=DYNAMIC;
CREATE TABLE IF NOT EXISTS `data_alarm_push_tag_rel` (
`id` bigint(20) unsigned NOT NULL COMMENT 'id',
`tenant_id` bigint(20) DEFAULT NULL COMMENT '租户id',
`application_id` bigint(20) DEFAULT NULL COMMENT '应用id',
`tag_key` varchar(20) DEFAULT NULL COMMENT '标签key',
`tag_value` bigint(20) DEFAULT NULL COMMENT '标签值',
`alarm_push_id` bigint(20) DEFAULT NULL COMMENT '告警推送id',
`create_at` bigint(20) DEFAULT NULL,
`update_at` bigint(20) DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='设备的模板以及监测指标之间标识的关系';
CREATE TABLE IF NOT EXISTS `data_alarm_push_template` (
`id` bigint(20) NOT NULL COMMENT 'id',
`push_type` varchar(20) DEFAULT NULL,
`push_type_name` varchar(20) DEFAULT NULL COMMENT '告警通知方式,系统消息,邮件,短信',
`push_template_name` varchar(64) DEFAULT NULL,
`push_template_content` text,
`enable` tinyint(1) DEFAULT NULL COMMENT '是否启用1启用 0关闭',
`remark` varchar(255) DEFAULT NULL,
`application_id` bigint(20) DEFAULT NULL COMMENT '应用id',
`tenant_id` bigint(20) DEFAULT NULL,
`create_at` datetime DEFAULT NULL,
`update_at` datetime DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='局部告警的设备数据表';
CREATE TABLE IF NOT EXISTS `data_alarm_push_template_tag_rel` (
`id` bigint(20) unsigned NOT NULL COMMENT 'id',
`tenant_id` bigint(20) DEFAULT NULL COMMENT '租户id',
`application_id` bigint(20) DEFAULT NULL COMMENT '应用id',
`tag_key` varchar(20) DEFAULT NULL COMMENT '标签key',
`tag_value` bigint(20) DEFAULT NULL COMMENT '标签值',
`alarm_push_template_id` bigint(20) DEFAULT NULL COMMENT '告警推送模板id',
`create_at` bigint(20) DEFAULT NULL,
`update_at` bigint(20) DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='设备的模板以及监测指标之间标识的关系';
CREATE TABLE IF NOT EXISTS `data_alarm_push_user` (
`id` bigint(20) unsigned NOT NULL COMMENT 'id',
`alarm_rule_id` bigint(20) DEFAULT NULL,
`user_id` bigint(20) DEFAULT NULL,
`user_name` varchar(50) DEFAULT NULL COMMENT '用户名',
`real_name` varchar(50) DEFAULT NULL,
`phone_number` varchar(50) DEFAULT NULL,
`email` varchar(50) DEFAULT NULL,
`alarm_push_id` bigint(20) DEFAULT NULL COMMENT '告警推送id',
`create_at` bigint(20) DEFAULT NULL,
`update_at` bigint(20) DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='设备的模板以及监测指标之间标识的关系';
CREATE TABLE IF NOT EXISTS `data_alarm_sub_rule` (
`id` bigint(20) NOT NULL COMMENT 'id',
`alarm_rule_id` bigint(20) DEFAULT NULL COMMENT '告警规则 json格式',
`level` tinyint(1) DEFAULT '1' COMMENT '告警等级',
`alarm_rule` text COMMENT '具体告警配置',
`dead_zone` double DEFAULT NULL COMMENT '死区',
`offline_duration` int(11) DEFAULT NULL COMMENT '离线时长检测',
`duration` int(11) DEFAULT NULL,
`offline_times` int(11) DEFAULT NULL,
`offline_percent` int(11) DEFAULT NULL,
`aviator` varchar(255) DEFAULT NULL COMMENT '规则表达式',
`ignore_aviator` varchar(255) DEFAULT NULL COMMENT '死区、步长设置,用于判断数据是否忽略告警',
`alarm_value_field` varchar(32) DEFAULT NULL,
`create_at` bigint(20) DEFAULT NULL,
`update_at` bigint(20) DEFAULT NULL,
PRIMARY KEY (`id`) USING BTREE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 ROW_FORMAT=DYNAMIC;
CREATE TABLE IF NOT EXISTS `data_alarm_rule` (
`id` bigint(20) unsigned NOT NULL COMMENT 'id',
`unique_id` varchar(64) DEFAULT NULL,
`application_id` bigint(20) DEFAULT NULL COMMENT '应用id',
`template_id` bigint(20) DEFAULT NULL COMMENT '模板id',
`device_id` bigint(20) DEFAULT NULL COMMENT '设备id',
`tenant_id` bigint(20) DEFAULT NULL COMMENT '租户id',
`product_id` bigint(20) DEFAULT NULL,
`monitor_point_id` bigint(20) DEFAULT NULL COMMENT '测点id',
`alarm_name` varchar(255) DEFAULT NULL COMMENT '告警名称',
`global_flag` tinyint(1) unsigned DEFAULT '0' COMMENT '使用范围 默认0全局 1局部',
`enable` tinyint(1) DEFAULT '1' COMMENT '是否启用1启用 0关闭',
`alarm_object` tinyint(1) DEFAULT '1' COMMENT '告警对象0设备1测点。',
`line_type` tinyint(1) DEFAULT '0' COMMENT '组合形式0按等级排序1and2or。',
`alarm_device_type` tinyint(1) DEFAULT '0' COMMENT '告警设备类型0具体设备1同产品型号设备2同租户设备3同应用设备4同设备模板设备',
`trigger_type` tinyint(1) DEFAULT '0' COMMENT '触发器类型0设备离线1设备失联2监测要素3监测指标4特征值告警5设备离线比例',
`user_name` varchar(32) DEFAULT NULL COMMENT '用户名',
`whether_summary` bigint(20) DEFAULT NULL COMMENT '是否汇总',
`alarm_msg` varchar(128) DEFAULT NULL,
`create_at` datetime DEFAULT NULL,
`update_at` datetime DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='用于设定监测的告警类型、推送规则以及相关规则';
CREATE TABLE IF NOT EXISTS `data_device_alarm_rel` (
`id` bigint(20) NOT NULL COMMENT 'id',
`device_id` bigint(20) DEFAULT NULL COMMENT '局部告警的设备id',
`application_id` bigint(20) DEFAULT NULL COMMENT '应用id',
`create_at` bigint(20) DEFAULT NULL,
`update_at` bigint(20) DEFAULT NULL,
PRIMARY KEY (`id`) USING BTREE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 ROW_FORMAT=DYNAMIC COMMENT='局部告警的设备数据表';
ALTER TABLE `data_alarm_summary`
ADD COLUMN `alarm_rule_id` bigint(20) NULL AFTER `id`,
MODIFY COLUMN `monitor_tags_name` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL AFTER `push_condition_id`;
ALTER TABLE `data_alarm_push_user`
ADD COLUMN `tenant_id` bigint(20) NULL,
ADD COLUMN `application_id` bigint(20) NULL,
ADD COLUMN `user_center_super` tinyint(1) unsigned DEFAULT '0' COMMENT='用户中心超管1是0否',
ADD COLUMN `application_super` tinyint(1) unsigned DEFAULT '0' COMMENT='应用超管1是0否';
--ALTER TABLE `data_alarm_push_log`
-- MODIFY COLUMN `user_name` varchar(50) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '用户名称' AFTER `push_time`,
-- MODIFY COLUMN `real_name` varchar(50) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '用户名' AFTER `user_name`,
-- MODIFY COLUMN `phone_number` varchar(50) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '手机号' AFTER `real_name`,
-- MODIFY COLUMN `email` varchar(50) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '邮箱' AFTER `phone_number`;
--ALTER TABLE `data_alarm_push_user`
-- MODIFY COLUMN `user_name` varchar(50) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '用户名' AFTER `user_id`,
-- MODIFY COLUMN `real_name` varchar(50) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL AFTER `user_name`,
-- MODIFY COLUMN `phone_number` varchar(50) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL AFTER `real_name`,
-- MODIFY COLUMN `email` varchar(50) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL AFTER `phone_number`;
ALTER TABLE `data_alarm_push_user`
ADD COLUMN `user_center_super` tinyint(1) NULL AFTER `tenant_id`,
ADD COLUMN `application_super` tinyint(1) NULL AFTER `user_center_super`;

View File

@ -0,0 +1,13 @@
CREATE STABLE IF NOT EXISTS alarm_log (`ts` TIMESTAMP,`alarm_value` DOUBLE ,`level` INT) TAGS (`tenant_id` BIGINT,`application_id` BIGINT,`indicator_id` BIGINT,`monitor_point_id` BIGINT,`alarm_key` NCHAR(20),`alarm_type` INT);
ALTER STABLE alarm_log ADD COLUMN `status` INT;
ALTER STABLE alarm_log ADD TAG `alarm_rule_id` BIGINT;
ALTER STABLE alarm_log ADD TAG `device_id` BIGINT;
ALTER STABLE alarm_log ADD COLUMN `whether_push` INT;
ALTER STABLE alarm_log ADD COLUMN `alarm_msg` NCHAR(64);
ALTER STABLE alarm_log ADD COLUMN `alarm_device_type` INT;
ALTER STABLE alarm_log ADD COLUMN `trigger_type` INT;
ALTER STABLE alarm_log ADD TAG `alarm_object` INT;
ALTER STABLE alarm_log ADD TAG `application_ids` NCHAR(128);
--CREATE STABLE `alarm_log` (`ts` TIMESTAMP, `alarm_value` DOUBLE, `level` INT, `status` INT, `alarm_msg` NCHAR(64), `alarm_device_type` INT, `trigger_type` INT, `whether_push` INT) TAGS (`tenant_id` BIGINT, `application_id` BIGINT, `indicator_id` BIGINT, `monitor_point_id` BIGINT, `alarm_key` NCHAR(20), `alarm_type` INT, `alarm_rule_id` BIGINT, `device_id` BIGINT, `alarm_object` INT, `application_ids` NCHAR(128));

View File

@ -0,0 +1,2 @@
# redis监听过期key
notify-keyspace-events Ex

View File

@ -0,0 +1 @@
ALTER STABLE alarm_log ADD COLUMN `trigger_elements` NCHAR(128);

View File

@ -0,0 +1,23 @@
CREATE TABLE IF NOT EXISTS `data_alarm_log` (
`id` bigint(20) NOT NULL,
`ts` datetime DEFAULT NULL,
`alarm_value` varchar(20) DEFAULT NULL,
`level` tinyint(4) DEFAULT NULL,
`tenant_id` bigint(20) DEFAULT NULL,
`application_id` bigint(20) DEFAULT NULL,
`indicator_id` bigint(20) DEFAULT NULL,
`monitor_point_id` bigint(20) DEFAULT NULL,
`alarm_key` varchar(20) DEFAULT NULL,
`alarm_type` tinyint(4) DEFAULT NULL,
`status` tinyint(4) DEFAULT NULL,
`alarm_rule_id` bigint(20) DEFAULT NULL,
`device_id` bigint(20) DEFAULT NULL,
`whether_push` tinyint(4) DEFAULT NULL,
`alarm_msg` varchar(128) DEFAULT NULL,
`alarm_device_type` tinyint(4) DEFAULT NULL,
`trigger_type` tinyint(4) DEFAULT NULL,
`alarm_object` tinyint(4) DEFAULT '1',
`application_ids` varchar(128) DEFAULT NULL,
`trigger_elements` varchar(128) DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

View File

@ -0,0 +1,9 @@
CREATE TABLE `data_push_file_message` (
`id` bigint(20) NOT NULL,
`even_json` text CHARACTER SET latin1 COMMENT 'json',
`file_name` varchar(255) CHARACTER SET latin1 DEFAULT NULL COMMENT '文件名称',
`deal_flag` tinyint(1) DEFAULT NULL COMMENT '1已处理0未处理',
`create_at` bigint(20) DEFAULT NULL COMMENT '创建时间',
`update_at` bigint(20) DEFAULT NULL COMMENT '更新时间',
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

View File

@ -0,0 +1,56 @@
CREATE TABLE `data_push_file_message` (
`id` bigint(20) NOT NULL,
`even_json` text COMMENT 'json',
`deal_flag` tinyint(1) unsigned DEFAULT '0' COMMENT '1已处理0未处理',
`create_at` bigint(20) DEFAULT NULL COMMENT '创建时间',
`update_at` bigint(20) DEFAULT NULL COMMENT '更新时间',
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
ALTER TABLE `data_center`.`data_push_file_message`
ADD COLUMN `file_name` varchar(255) NULL COMMENT '文件名称' AFTER `even_json`;
ALTER TABLE `data_alarm_push`
ADD COLUMN `popup_type` tinyint(1) NULL COMMENT '弹窗方式1手动关闭 2自动关闭' AFTER `push_type_name`,
ADD COLUMN `popup_audio` varchar(255) NULL COMMENT '弹窗音频地址' AFTER `popup_type`;
SET NAMES utf8mb4;
SET FOREIGN_KEY_CHECKS = 0;
-- ----------------------------
-- Table structure for data_device_alarm_rel
-- ----------------------------
CREATE TABLE `data_device_alarm_rel` (
`id` bigint(20) NOT NULL COMMENT 'id',
`device_id` bigint(20) NULL DEFAULT NULL COMMENT '设备id',
`device_name` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '设备名称',
`alarm_time` datetime(0) NULL DEFAULT NULL COMMENT '告警时间',
`status` tinyint(1) NULL DEFAULT NULL COMMENT '状态 0:未处理;1:已处理',
`alarm_key` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '告警键值',
`alarm_value` double NULL DEFAULT NULL COMMENT '告警数据',
`alarm_name` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '告警名称',
`handle_user` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '处理人',
`handle_time` datetime(0) NULL DEFAULT NULL COMMENT '处理时间',
`handle_remark` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '处理备注',
`application_ids` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '应用ids',
`tenant_id` bigint(20) NULL DEFAULT NULL COMMENT '租户id',
`create_at` bigint(20) NULL DEFAULT NULL,
`update_at` bigint(20) NULL DEFAULT NULL,
PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = '预警广播设备告警数据表' ROW_FORMAT = Dynamic;
SET FOREIGN_KEY_CHECKS = 1;
-- create table `dev_cloud_231116_bak`.dev_info as select * from dev_cloud.dev_info;
-- create table `dev_cloud_231116_bak`.dev_product_command_pannel_conf as select * from dev_cloud.dev_product_command_pannel_conf;
-- create table `dev_cloud_231116_bak`.dev_protocol as select * from dev_cloud.dev_protocol;
-- create table `dev_cloud_231116_bak`.dev_protocol_version as select * from dev_cloud.dev_protocol_version;
-- create table `dev_cloud_231116_bak`.dev_template as select * from dev_cloud.dev_template;
-- create table `dev_cloud_231116_bak`.dev_template_command_pannel_conf as select * from dev_cloud.dev_template_command_pannel_conf;
-- create table `dev_cloud_231116_bak`.dev_template_factor_conf_release as select * from dev_cloud.dev_template_factor_conf_release;
-- create table `dev_cloud_231116_bak`.dev_template_factor_conf_snap as select * from dev_cloud.dev_template_factor_conf_snap;

View File

@ -0,0 +1,16 @@
ALTER TABLE `data_center`.`data_device_alarm_rel`
ADD COLUMN `device_code` varchar(50) NULL COMMENT '设备编码' AFTER `device_id`;
ALTER TABLE `data_center`.`data_device_alarm_rel`
ADD COLUMN `type` tinyint(1) NULL COMMENT '告警类型 1:广播设备告警 1:闸门设备告警' AFTER `handle_remark`;
UPDATE data_device_alarm_rel
SET type = 1
WHERE
type IS NULL;
ALTER TABLE `data_center`.`data_indicator_point`
MODIFY COLUMN `monitor_tags_name` text CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL COMMENT '水库名称 结构名称' AFTER `base_id`;
ALTER TABLE `data_center`.`data_alarm_summary`
MODIFY COLUMN `monitor_tags_name` text CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL AFTER `push_condition_id`;

View File

@ -0,0 +1,7 @@
ALTER TABLE `data_alarm_push_template`
ADD COLUMN `tencent_template_id` bigint(20) NULL COMMENT '腾讯模板id' AFTER `update_at`,
ADD COLUMN `state` int NULL COMMENT '状态 0未审核1已审核-1表示审核未通过或审核失败' AFTER `tencent_template_id`,
ADD COLUMN `reason` text CHARACTER SET utf8 COLLATE utf8_general_ci NULL COMMENT '失败原因' AFTER `state`;
ALTER TABLE `data_alarm_push_log` ADD COLUMN `reason` text CHARACTER SET utf8 COLLATE utf8_general_ci NULL COMMENT '失败原因';
ALTER TABLE `data_indicator_point_tag_rel`
MODIFY COLUMN `tag_value` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '标签值' AFTER `tag_key`;

View File

@ -0,0 +1,8 @@
-- 创建数据库
CREATE DATABASE IF NOT EXISTS data_center UPDATE 2;
-- 使用数据库data_center
use data_center;
-- 创建设备状态表
CREATE STABLE IF NOT EXISTS device_status (`ts` TIMESTAMP,`online` TINYINT,`duration` INT) TAGS (`info` JSON);
-- 创建无效数据存储
CREATE STABLE IF NOT EXISTS device_invalid (`ts` TIMESTAMP,`keyword` NCHAR(20),`description` NCHAR(20)) TAGS (`device_id` NCHAR(20));

View File

@ -0,0 +1,88 @@
CREATE TABLE `push_classification` (
`id` bigint(20) NOT NULL COMMENT 'id',
`classification_code` varchar(20) DEFAULT NULL COMMENT '分类代码',
`name` varchar(20) DEFAULT NULL COMMENT '分类名字',
`remark` varchar(255) DEFAULT NULL COMMENT '备注',
`create_at` bigint(20) DEFAULT NULL COMMENT '创建时间',
`update_at` bigint(20) DEFAULT NULL COMMENT '更新时间',
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='3.21';
CREATE TABLE `push_config` (
`id` bigint(20) NOT NULL COMMENT 'id',
`classification_code` varchar(20) DEFAULT NULL COMMENT '分类代码',
`config_json` varchar(255) DEFAULT NULL COMMENT '配置json格式',
`company_code` varchar(20) DEFAULT NULL COMMENT '公司代码',
`create_at` bigint(20) DEFAULT NULL COMMENT '创建时间',
`update_at` bigint(20) DEFAULT NULL COMMENT '更新时间',
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='3.21';
CREATE TABLE `push_dict` (
`id` bigint(20) NOT NULL COMMENT 'id',
`keyword` varchar(20) DEFAULT NULL COMMENT '',
`description` varchar(20) DEFAULT NULL COMMENT '',
`company_code` varchar(20) DEFAULT NULL COMMENT '公司代码',
`dict_type_id` varchar(32) DEFAULT NULL COMMENT '命令id',
`create_at` bigint(20) DEFAULT NULL COMMENT '创建时间',
`update_at` bigint(20) DEFAULT NULL COMMENT '更新时间',
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='3.28推送字典键值对';
CREATE TABLE `push_dict_type` (
`id` bigint(20) NOT NULL COMMENT 'id',
`name` varchar(20) DEFAULT NULL COMMENT '字典类型名',
`company_code` varchar(20) DEFAULT NULL COMMENT '公司代码',
`create_at` bigint(20) DEFAULT NULL COMMENT '创建时间',
`update_at` bigint(20) DEFAULT NULL COMMENT '更新时间',
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='3.28推送公司字典';
CREATE TABLE `push_log` (
`id` bigint(20) NOT NULL COMMENT 'id',
`classification_code` varchar(20) DEFAULT NULL COMMENT '分类代码',
`config_id` varchar(32) DEFAULT NULL COMMENT '配置id',
`template_id` varchar(32) DEFAULT NULL COMMENT '模板id',
`content` varchar(255) DEFAULT NULL COMMENT '模板内容',
`data` varchar(255) DEFAULT NULL COMMENT '队列待发送数据',
`contact_info` varchar(255) DEFAULT NULL COMMENT '联系信息',
`state` int(11) DEFAULT NULL COMMENT '0待推送 1成功 2失败',
`reason` varchar(255) DEFAULT NULL COMMENT '原因',
`company_code` varchar(20) DEFAULT NULL COMMENT '公司代码',
`send_time` bigint(20) DEFAULT NULL,
`create_at` bigint(20) DEFAULT NULL COMMENT '创建时间',
`update_at` bigint(20) DEFAULT NULL COMMENT '更新时间',
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='推送日志\r\n';
CREATE TABLE `push_queue` (
`id` bigint(20) NOT NULL COMMENT 'id',
`classification_code` varchar(20) DEFAULT NULL COMMENT '分类代码',
`config_id` varchar(32) DEFAULT NULL COMMENT '配置id',
`template_id` varchar(32) DEFAULT NULL COMMENT '模板id',
`content` varchar(255) DEFAULT NULL COMMENT '模板内容',
`data` varchar(255) DEFAULT NULL COMMENT '队列发送数据',
`contact_info` varchar(255) DEFAULT NULL COMMENT '联系信息',
`delay_time` bigint(20) DEFAULT NULL COMMENT '发送时间',
`state` int(11) DEFAULT NULL COMMENT '0待推送 1成功 2失败',
`reason` varchar(255) DEFAULT NULL COMMENT '原因',
`company_code` varchar(20) DEFAULT NULL COMMENT '公司代码',
`create_at` bigint(20) DEFAULT NULL COMMENT '创建时间',
`update_at` bigint(20) DEFAULT NULL COMMENT '更新时间',
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='3.21\r\n';
CREATE TABLE `push_template` (
`id` bigint(20) NOT NULL COMMENT 'id',
`classification_code` varchar(20) DEFAULT NULL COMMENT '类别代码',
`content` varchar(255) DEFAULT NULL COMMENT '模板内容',
`company_code` varchar(20) DEFAULT NULL COMMENT '公司代码',
`template_name` varchar(32) DEFAULT NULL COMMENT '模板名称',
`remark` varchar(255) DEFAULT NULL COMMENT '备注',
`platform_id` varchar(32) DEFAULT NULL COMMENT '对应类别平台id',
`state` int(11) DEFAULT NULL COMMENT '审核状态 申请模板状态其中0表示审核通过1表示审核中-1表示审核未通过或审核失败。',
`create_at` bigint(20) DEFAULT NULL COMMENT '创建时间',
`update_at` bigint(20) DEFAULT NULL COMMENT '更新时间',
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='3.21';

View File

@ -0,0 +1,11 @@
FROM openjdk:8u342-oraclelinux7
RUN ln -snf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime && echo "Asia/Shanghai" > /etc/timezone
ADD busybox /sbin/busybox
RUN chmod +x /sbin/busybox
RUN cp /sbin/busybox bin
RUN busybox --install -s bin
WORKDIR /
RUN mkdir app
ENTRYPOINT ["sh","/app/run.sh"]

Binary file not shown.

View File

@ -0,0 +1,27 @@
FROM centos:7
MAINTAINER syn
COPY readme.txt /usr/local/readme.txt
ADD jdk-8u311-linux-x64.tar.gz /usr/local/
ADD apache-tomcat-8.5.40.tar.gz /usr/local/
RUN mv /usr/local/apache-tomcat-8.5.40 /usr/local/tomcat
RUN yum -y install vim
ENV MYPATH /usr/local
WORKDIR $MYPATH
ENV JAVA_HOME /usr/local/jdk1.8.0_311
ENV CLASSPATH $JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
ENV CATALINA_HOME /usr/local/tomcat
ENV CATALINA_BASH /usr/local/tomcat
ENV PATH $PATH:$JAVA_HOME/bin:$CATALINA_HOME/lib:$CATALINA_HOME/bin
ENV TZ=Asia/Shanghai
RUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone
EXPOSE 8080
CMD /usr/local/tomcat/bin/startup.sh && tail -F /usr/local/tomcat/logs/catalina.out

View File

@ -0,0 +1,84 @@
#设置自定义网络
DOCKER_VIRTUAL_IP=172.27.0.1
#设置自定义网络名称(注意如果改网络名称需要同时修改docker-compose.yml文件中的网络名称)
DOCKER_CUSTOM_NETWORK_NAME=custom_net
#实例ID(集群部署使用)
INSTANCE_ID=1
#宿主机IP,建议填写宿主机内网IP(kafka使用)
HOST_IP=172.30.229.109
#mysql root密码
MYSQL_PASSWORD=Xmsx123!@#
#redis 密码
REDIS_PASSWORD=Xmsx123456
#TDengine 密码
TAOS_PASSWORD=taosdata
#redis 宿主机端口
REDIS_PORT=6379
#zookeeper 宿主机端口
ZK_PORT=2181
#kafka 宿主机端口
KAFKA_PORT=9092
#mysql 宿主机端口
MYSQL_PORT=3306
#dmp-admin 宿主机端口
DMP_ADMIN_PORT=8180
#nginx 宿主机端口
NGINX_PORT=80
#portainer(容器管理) 宿主机端口
PORTAINER_PORT=8089
#taos 宿主机端口
TAOS_PORT=6030-6041
#kafka-ui(kafka管理) 宿主机端口
KAFKA_UI_PORT=9080
#emqx web端口 宿主机端口
EMQX_WEB_PORT=18083
#emqx 端口 宿主机端口
EMQX_PORT=1883
#rabbitmq web端口 宿主机端口
RABBITMQ_WEB_PORT=15672
#rabbitmq 端口 宿主机端口
RABBITMQ_PORT=5672
#zookeeper jvm参数
ZK_JVM_OPTS=-Xmx500m
#kafka jvm参数
KAFKA_JVM_OPTS=-Xmx1800m
#dmp-device jvm参数
DMP_DEVICE_JVM_OPTS=-Djava.net.preferIPv4Stack=true -Xmx1200m -XX:+UseG1GC
#dmp-calc jvm参数
DMP_CALC_JVM_OPTS=-Xmx1200m -XX:+UseG1GC
#dmp-handler jvm参数
DMP_HANDLER_JVM_OPTS=-Xmx1500m -XX:+UseG1GC
#dmp-admin jvm参数
DMP_ADMIN_JVM_OPTS=-Xmx1500m -XX:+UseG1GC
#dmp-device-mqtt jvm参数
DMP_DEVICE_MQTT_JVM_OPTS=-Xmx1000m -XX:+UseG1GC
#dmp-rabbitmq jvm参数
DMP_RABBITMQ_JVM_OPTS=-Xmx1000m -XX:+UseG1GC
#dmp-kafka-mqtt jvm参数
DMP_KAFKA_MQTT_JVM_OPTS=-Xmx1000m -XX:+UseG1GC

View File

@ -0,0 +1,183 @@
version: "3"
services:
app:
build:
context: /home/xmsx/docker-shell/app
image: app:1.0.0
iot-user-center:
container_name: iot-user-center
image: app:1.0.0
cap_add:
- SYS_PTRACE
environment:
TZ: "Asia/Shanghai"
JVM_OPTS: "-Xms1028M -Xmx2048M"
SERVER_PORT: 8084
MYSQL_HOST: 10.33.100.46
MYSQL_PORT: 3306
MYSQL_USERNAME: root
MYSQL_PASSWORD: Xmsx123#@!
NACOS_HOST: 10.33.100.46
NACOS_PORT: 8848
REDIS_HOST: 10.33.100.46
REDIS_PORT: 6379
REDIS_PASSWORD: Xmsx123456
MINIO_ENDPOINT_HOST: 10.33.100.46
MINIO_ENDPOINT_PORT: 9090
MINIO_ACCESS_KEY: minioadmin
MINIO_SECRET_KEY: minioadmin
MINIO_ADDRESS_HOST: 10.33.100.46
MINIO_ADDRESS_PORT: 9090
privileged: true
volumes:
- /home/xmsx/iot-application/iot-user-center:/app
- /usr/sbin/dmidecode:/usr/sbin/dmidecode
- /dev/mem:/dev/mem
restart: always
extra_hosts:
- "kafka:10.33.100.46"
network_mode: "host"
iot-device-manager:
container_name: iot-device-manager
image: app:1.0.0
cap_add:
- SYS_PTRACE
environment:
TZ: "Asia/Shanghai"
JVM_OPTS: "-Xms1028M -Xmx2048M"
SERVER_PORT: 8090
MYSQL_HOST: 10.33.100.46
MYSQL_PORT: 3306
MYSQL_USERNAME: root
MYSQL_PASSWORD: Xmsx123#@!
REDIS_HOST: 10.33.100.46
REDIS_PORT: 6379
REDIS_PASSWORD: Xmsx123456
KAFKA_HOST: 10.33.100.46
KAFKA_PORT: 9092
NACOS_HOST: 10.33.100.46
NACOS_PORT: 8848
HYDROLOGICAL_DOMAIN_NAME: "10.33.100.46:9100"
SX_BROADCAST_DOMAIN_NAME: "10.33.100.46:9101"
DZ_DOMAIN_NAME: "10.33.100.46:1883"
MINIO_ENDPOINT_HOST: 10.33.100.46
MINIO_ENDPOINT_PORT: 9090
MINIO_ACCESS_KEY: minioadmin
MINIO_SECRET_KEY: minioadmin
MINIO_ADDRESS_HOST: 10.33.100.46
MINIO_ADDRESS_PORT: 9090
privileged: true
volumes:
- /home/xmsx/iot-application/iot-device-manager:/app
- /usr/sbin/dmidecode:/usr/sbin/dmidecode
- /dev/mem:/dev/mem
restart: always
extra_hosts:
- "kafka:10.33.100.46"
network_mode: "host"
iot-data-bus:
container_name: iot-data-bus
image: app:1.0.0
cap_add:
- SYS_PTRACE
environment:
TZ: "Asia/Shanghai"
JVM_OPTS: "-Xms1028M -Xmx2048M"
SERVER_PORT: 8081
UPGRADE_SERVER_HOST: 10.33.100.46
UPGRADE_SERVER_PORT: 9162
REDIS_HOST: 10.33.100.46
REDIS_PORT: 6379
REDIS_PASSWORD: Xmsx123456
KAFKA_HOST: 10.33.100.46
KAFKA_PORT: 9092
NACOS_HOST: 10.33.100.46
NACOS_PORT: 8848
MQTT_CONSUMER: "false"
DZ_MQTT_ENABLE: "false"
privileged: true
volumes:
- /home/xmsx/iot-application/iot-data-bus:/app
- /usr/sbin/dmidecode:/usr/sbin/dmidecode
- /dev/mem:/dev/mem
restart: always
extra_hosts:
- "kafka:10.33.100.46"
network_mode: "host"
iot-device-access:
container_name: iot-device-access
image: app:1.0.0
cap_add:
- SYS_PTRACE
environment:
TZ: "Asia/Shanghai"
JVM_OPTS: "-Xms1028M -Xmx2048M"
SERVER_PORT: 8082
REDIS_HOST: 10.33.100.46
REDIS_PORT: 6379
REDIS_PASSWORD: Xmsx123456
KAFKA_HOST: 10.33.100.46
KAFKA_PORT: 9092
HYDROLOGICAL_PORT: 9100
SX_BROADCAST_PORT: 9101
SX_CONFIGURATION_PORT: 9161
SX_UPGRADE_PORT: 9162
NACOS_HOST: 10.33.100.46
NACOS_PORT: 8848
privileged: true
volumes:
- /home/xmsx/iot-application/iot-device-access:/app
- /usr/sbin/dmidecode:/usr/sbin/dmidecode
- /dev/mem:/dev/mem
restart: always
extra_hosts:
- "kafka:10.33.100.46"
network_mode: "host"
apptaos:
build:
context: /home/xmsx/docker-shell/apptaos
image: apptaos:1.0.0
iot-data-center:
container_name: iot-data-center
image: apptaos:1.0.0
cap_add:
- SYS_PTRACE
environment:
TZ: "Asia/Shanghai"
JVM_OPTS: "-Xms1028M -Xmx2048M"
SERVER_PORT: 8083
TAOS_HOST: 10.33.100.46
TAOS_PORT: 6030
TAOS_USERNAME: root
TAOS_PASSWORD: taosdata
MYSQL_HOST: 10.33.100.46
MYSQL_PORT: 3306
MYSQL_USERNAME: root
MYSQL_PASSWORD: Xmsx123#@!
NACOS_HOST: 10.33.100.46
NACOS_PORT: 8848
REDIS_HOST: 10.33.100.46
REDIS_PORT: 6379
REDIS_PASSWORD: Xmsx123456
KAFKA_HOST: 10.33.100.46
KAFKA_PORT: 9092
MINIO_ENDPOINT_HOST: 10.33.100.46
MINIO_ENDPOINT_PORT: 9090
MINIO_ACCESS_KEY: minioadmin
privileged: true
volumes:
- /home/xmsx/iot-application/iot-data-center:/app
- /usr/sbin/dmidecode:/usr/sbin/dmidecode
- /dev/mem:/dev/mem
restart: always
extra_hosts:
- "kafka:10.33.100.46"
network_mode: "host"

View File

@ -0,0 +1,47 @@
version: "3"
services:
iot-universal-monitoring-platform:
container_name: iot-universal-monitoring-platform
image: app:1.0.0
cap_add:
- SYS_PTRACE
environment:
TZ: "Asia/Shanghai"
JVM_OPTS: "-Xms1028M -Xmx2048M"
SERVER_PORT: 8086
MYSQL_HOST: 10.33.100.46
MYSQL_PORT: 3306
MYSQL_USERNAME: root
MYSQL_PASSWORD: Xmsx123#@!
REDIS_HOST: 10.33.100.46
REDIS_PORT: 6379
REDIS_PASSWORD: Xmsx123456
KAFKA_HOST: 10.33.100.46
KAFKA_PORT: 9092
NACOS_HOST: 10.33.100.46
NACOS_PORT: 8848
MINIO_ENDPOINT_HOST: 10.33.100.46
MINIO_ENDPOINT_PORT: 9090
MINIO_ACCESS_KEY: minioadmin
MINIO_SECRET_KEY: minioadmin
MINIO_ADDRESS_HOST: 10.33.100.46
INIO_ADDRESS_PORT: 9090
RTU_UDP_HOST: 10.33.100.246
RTU_UDP_PORT: 5477
RTU_WEBSOCKET_HOST: 10.33.100.46
RTU_WEBSOCKET_PORT: 9098
RTU_SERVER_HOST: 10.33.100.46
RTU_SERVER_PORT: 9095
KK_HOST: 10.33.100.46
KK_PORT: 8012
privileged: true
volumes:
- /home/xmsx/iot-application/iot-universal-monitoring-platform:/app
- /usr/sbin/dmidecode:/usr/sbin/dmidecode
- /dev/mem:/dev/mem
restart: always
extra_hosts:
- "kafka:10.33.100.46"
network_mode: "host"

View File

@ -0,0 +1,23 @@
version: '3'
services:
fileview:
image: keking/kkfileview:latest
container_name: fileview
restart: always
ports:
- "8012:8012"
environment:
KK_FILE_DIR: "/data/file"
KK_BASE_URL: "https://aa.bb.com/preview/"
KK_CONTEXT_PATH: "/preview/"
volumes:
- /home/xmsx/kkfileview/data:/data/file
deploy:
resources:
limits:
cpus: "1"
memory: 2G
volumes:
fileview_data:
driver: local

View File

@ -0,0 +1,10 @@
version: "3"
services:
phpmyadmin:
image: phpmyadmin:latest
ports:
- 13306:80
environment:
- PMA_ARBITRARY=1
restart: unless-stopped

View File

@ -0,0 +1,31 @@
SERVER_PORT=8083
TAOS_HOST=127.0.0.1
TAOS_PORT=6030
TAOS_DATABASE=data_center
TAOS_TIMEZONE=UTC+8
TAOS_USERNAME=root
TAOS_PASSWORD=taosdata
MYSQL_HOST=127.0.0.1
MYSQL_PORT=3306
MYSQL_USERNAME=root
MYSQL_PASSWORD=Xmsx123!@#
NACOS_HOST=127.0.0.1
NACOS_PORT=8848
REDIS_HOST=127.0.0.1
REDIS_PORT=6379
REDIS_PASSWORD=Xmsx123456
MINIO_ENDPOINT_HOST=127.0.0.1
MINIO_ENDPOINT_PORT=9090
MINIO_ACCESS_KEY=minioadmin
MINIO_SECRET_KEY=minioadmin
MINIO_ADDRESS_HOST=127.0.0.1
MINIO_ADDRESS_PORT=9090
TASKER_PUSH_TASKKEY=0
TASKER_RECORD_TASKKEY=1
RESERVOIR_HOST=127.0.0.1
RESERVOIR_FORMULA_PORT=7000
RESERVOIR_LOOKTABLE_PORT=9000
FTP_HOST=127.0.0.1
FTP_PORT=9121
FTP_USERNAME=ftp
FTP_PASSWORD=Xmsx123456

View File

@ -0,0 +1,2 @@
cd /app
java $JVM_OPTS -jar *.jar

View File

@ -0,0 +1,6 @@
@echo off
title=iot-data-center
chcp 65001
for /F %%i in ('type .env') do ( set %%i)
for %%i in (*.jar) do (set JARNAME=%%i )
java -jar -Xms512m -Xmx2048m ./%JARNAME%

View File

@ -0,0 +1,108 @@
CREATE TABLE IF NOT EXISTS `data_indicator_constant` (
`id` bigint(20) NOT NULL COMMENT 'id',
`indicator_id` bigint(20) DEFAULT NULL,
`server_code` varchar(64) DEFAULT NULL,
`constant_key` varchar(32) DEFAULT NULL COMMENT '监测指标常量key',
`create_at` bigint(20) DEFAULT NULL,
`update_at` bigint(20) DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
CREATE TABLE IF NOT EXISTS `data_indicator_output_formula` (
`id` bigint(20) NOT NULL COMMENT 'id',
`indicator_id` bigint(20) DEFAULT NULL,
`server_code` varchar(64) DEFAULT NULL,
`formula_type` varchar(32) DEFAULT NULL COMMENT '公式类型raw原始值,aviator动态公式,fixed固定公式',
`method_annotation` varchar(32) DEFAULT NULL COMMENT '方法标注hourly_sum小时累积,daily_sum日累积,monthly_sum月累积,annually_sum年累积,hourly_average小时平均,daily_average日平均,monthly_average月平均,annually_average年平均',
`formula_content` text COMMENT '公式内容',
`output_indicator` varchar(32) DEFAULT NULL COMMENT '输出指标要素',
`element_precision` int(11) DEFAULT '4' COMMENT '精度',
`remark` varchar(32) DEFAULT NULL COMMENT '字段备注',
`create_at` bigint(20) DEFAULT NULL,
`update_at` bigint(20) DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
CREATE TABLE IF NOT EXISTS `data_alarm_summary` (
`id` bigint(20) unsigned NOT NULL,
`ts` timestamp NULL DEFAULT NULL ON UPDATE CURRENT_TIMESTAMP,
`alarm_end_time` timestamp NULL DEFAULT NULL ON UPDATE CURRENT_TIMESTAMP,
`new_ts` timestamp NULL DEFAULT NULL ON UPDATE CURRENT_TIMESTAMP,
`release_time` timestamp NULL DEFAULT NULL ON UPDATE CURRENT_TIMESTAMP,
`alarm_key` varchar(32) DEFAULT NULL,
`alarm_value` varchar(32) DEFAULT NULL,
`alarm_name` varchar(64) DEFAULT NULL,
`alarm_type` tinyint(4) DEFAULT NULL,
`status` tinyint(4) DEFAULT NULL,
`flow_status` tinyint(4) DEFAULT '0' COMMENT '流转状态,1:已流转;0:未流转',
`level` tinyint(4) DEFAULT NULL,
`device_id` bigint(20) DEFAULT NULL,
`monitor_point_id` bigint(20) DEFAULT NULL,
`monitor_point_name` varchar(64) DEFAULT NULL,
`alarm_rule` varchar(64) DEFAULT NULL,
`push_condition_id` bigint(20) DEFAULT NULL,
`monitor_tags_name` varchar(64) DEFAULT NULL,
`indicator_id` bigint(20) DEFAULT NULL,
`application_id` bigint(20) DEFAULT NULL,
`tenant_id` bigint(20) DEFAULT NULL,
`last_one` int(11) DEFAULT '1',
`create_at` bigint(20) DEFAULT NULL,
`update_at` bigint(20) DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
CREATE TABLE IF NOT EXISTS `data_indicator_output_formula_rel` (
`id` bigint(20) NOT NULL COMMENT 'id',
`sever_formula_id` bigint(20) DEFAULT NULL,
`tenant_id` bigint(20) DEFAULT NULL COMMENT '租户id',
`application_id` bigint(20) DEFAULT NULL COMMENT '应用id',
`create_at` bigint(20) DEFAULT NULL,
`update_at` bigint(20) DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
CREATE TABLE IF NOT EXISTS `data_indicator_point` (
`id` bigint(20) unsigned NOT NULL COMMENT 'id',
`server_code` varchar(40) DEFAULT NULL COMMENT '服务编码',
`tenant_id` bigint(20) DEFAULT NULL COMMENT '租户id',
`application_id` bigint(20) DEFAULT NULL COMMENT '应用id',
`indicator_id` bigint(20) DEFAULT NULL COMMENT '监测指标id',
`device_id` bigint(20) DEFAULT NULL COMMENT '设备id',
`template_id` bigint(20) DEFAULT NULL COMMENT '模板id',
`monitor_point_id` bigint(20) DEFAULT NULL COMMENT '测点id',
`monitor_point_name` varchar(40) DEFAULT NULL COMMENT '测点名称',
`base_point` tinyint(1) unsigned DEFAULT '0' COMMENT '是否为基站点0否1是 默认是,数据不做处理',
`base_id` bigint(20) DEFAULT NULL COMMENT '基站点ID 不为基站点时才有',
`monitor_tags_name` varchar(40) DEFAULT NULL COMMENT '水库名称 结构名称',
`init_json` text COMMENT '初始化参数,json格式',
`create_at` bigint(20) DEFAULT NULL,
`update_at` bigint(20) DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='设备的模板以及监测指标之间标识的关系';
CREATE TABLE IF NOT EXISTS `data_indicator_point_device_rel` (
`id` bigint(20) unsigned NOT NULL COMMENT 'id',
`tenant_id` bigint(20) DEFAULT NULL COMMENT '租户id',
`application_id` bigint(20) DEFAULT NULL COMMENT '应用id',
`template_field` varchar(20) DEFAULT NULL COMMENT '模板字段',
`monitor_field` varchar(20) DEFAULT NULL COMMENT '监测指标对应的要素',
`monitor_point_id` bigint(20) DEFAULT NULL COMMENT '测点id',
`create_at` bigint(20) DEFAULT NULL,
`update_at` bigint(20) DEFAULT NULL,
PRIMARY KEY (`id`),
UNIQUE KEY `INDEX_UK_MONITORID_FIELD` (`monitor_field`,`monitor_point_id`) USING BTREE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='设备的模板以及监测指标之间标识的关系';
CREATE TABLE IF NOT EXISTS `data_indicator_point_tag_rel` (
`id` bigint(20) unsigned NOT NULL COMMENT 'id',
`tenant_id` bigint(20) DEFAULT NULL COMMENT '租户id',
`application_id` bigint(20) DEFAULT NULL COMMENT '应用id',
`tag_key` varchar(20) DEFAULT NULL COMMENT '标签key',
`tag_value` varchar(20) DEFAULT NULL COMMENT '标签值',
`monitor_point_id` bigint(20) DEFAULT NULL COMMENT '测点id',
`create_at` bigint(20) DEFAULT NULL,
`update_at` bigint(20) DEFAULT NULL,
PRIMARY KEY (`id`),
UNIQUE KEY `INDEX_UK_MONITORID_FIELD` (`tag_value`,`monitor_point_id`) USING BTREE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='设备的模板以及监测指标之间标识的关系';

View File

@ -0,0 +1,7 @@
CREATE STABLE IF NOT EXISTS alarm_log (`ts` TIMESTAMP,`alarm_value` DOUBLE ,`level` INT) TAGS (`tenant_id` BIGINT,`application_id` BIGINT,`indicator_id` BIGINT,`monitor_point_id` BIGINT,`alarm_key` NCHAR(20),`alarm_type` INT);
ALTER STABLE alarm_log ADD COLUMN `status` INT;
ALTER STABLE alarm_log ADD TAG `alarm_rule_id` BIGINT;
ALTER STABLE alarm_log ADD TAG `device_id` BIGINT;

View File

@ -0,0 +1,3 @@
ALTER TABLE `data_indicator_output_formula`
ADD COLUMN `field_group` varchar(32) NULL COMMENT '字段组,多个固定方法需要存储于同一张表时使用' AFTER `output_indicator`,
ADD COLUMN `base_point_logic` tinyint(1) NULL DEFAULT 0 COMMENT '1有基站点逻辑 0无基站点逻辑' AFTER `field_group`;

View File

@ -0,0 +1,3 @@
/*创建监测记录超级表*/
CREATE STABLE IF NOT EXISTS monitor_record (`ts` TIMESTAMP,`release_time` TIMESTAMP,`application_id` NCHAR(20),`alarm_value` DOUBLE ,`alarm_key` NCHAR(40),`alarm_type` int,`alarm_name` NCHAR(20),`alarm_rule` NCHAR(255),`level` int,`status` int,`monitor_indicator` NCHAR(20),`push_condition_id` NCHAR(20)) TAGS (`info` Json);
ALTER STABLE monitor_record ADD COLUMN `push_condition_id` NCHAR(20);

View File

@ -0,0 +1,143 @@
/*
Navicat Premium Data Transfer
Source Server : fourfaith
Source Server Type : MySQL
Source Server Version : 50725
Source Host : 192.168.9.226:3306
Source Schema : fourfaith_application_parent
Target Server Type : MySQL
Target Server Version : 50725
File Encoding : 65001
Date: 08/09/2022 18:13:17
*/
SET NAMES utf8mb4;
SET FOREIGN_KEY_CHECKS = 0;
-- ----------------------------
-- Table structure for data_alarm_push_condition
-- ----------------------------
CREATE TABLE `data_alarm_push_condition` (
`id` bigint(20) NOT NULL COMMENT 'id',
`push_content` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '推送内容',
`level` tinyint(1) UNSIGNED NULL DEFAULT 1 COMMENT '等级',
`application_id` bigint(20) NULL DEFAULT NULL COMMENT '应用id',
`push_type` tinyint(1) UNSIGNED NULL DEFAULT NULL COMMENT '推送类型0 短信 1邮箱',
`contact_info` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '联系方式 json数组格式只能存在手机或者邮箱一种',
`monitor_point_id` bigint(20) NULL DEFAULT NULL COMMENT '测点id 水库用',
`rule_id` bigint(20) NULL DEFAULT NULL COMMENT '规则id',
`alarm_status` tinyint(1) UNSIGNED NULL DEFAULT 1 COMMENT '告警状态 1告警状态 0解除告警',
`push_object` text CHARACTER SET utf8 COLLATE utf8_general_ci NULL COMMENT '推送对象,用于设备管家回显',
`create_at` bigint(20) NULL DEFAULT NULL COMMENT '创建时间',
`update_at` bigint(20) NULL DEFAULT NULL COMMENT '更新时间',
PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = '需要告警后推送的条件' ROW_FORMAT = Dynamic;
-- ----------------------------
-- Table structure for data_alarm_push_record
-- ----------------------------
CREATE TABLE `data_alarm_push_record` (
`id` bigint(20) NOT NULL,
`push_content` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '推送内容',
`push_type` tinyint(1) NULL DEFAULT NULL COMMENT '推送类型',
`status` tinyint(1) NULL DEFAULT NULL COMMENT '推送状态',
`monitor_indicator` varchar(40) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '监测指标',
`monitor_point_id` bigint(20) NULL DEFAULT NULL COMMENT '测点id',
`level` tinyint(1) NULL DEFAULT NULL COMMENT '告警等级',
`reservoir_id` bigint(20) NULL DEFAULT NULL COMMENT '水库id',
`alarm_type` tinyint(1) NULL DEFAULT NULL COMMENT '告警类型',
`push_condition_id` bigint(20) NULL DEFAULT NULL COMMENT '推送条件id',
`application_id` bigint(20) NULL DEFAULT NULL COMMENT '应用id',
`alarm_time` varchar(50) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '告警时间',
`contact_add` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '联系地址',
`create_at` bigint(20) NULL DEFAULT NULL COMMENT '推送时间',
`update_at` bigint(20) NULL DEFAULT NULL COMMENT '更新时间',
PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8 COLLATE = utf8_general_ci ROW_FORMAT = Dynamic;
-- ----------------------------
-- Table structure for data_alarm_rule_rel
-- ----------------------------
CREATE TABLE `data_alarm_rule_rel` (
`id` bigint(20) NOT NULL COMMENT 'id',
`monitor_alarm_id` bigint(255) NULL DEFAULT NULL COMMENT '告警规则 json格式',
`alarm_type` tinyint(1) UNSIGNED NULL DEFAULT NULL COMMENT '告警类型 0设备离线1设备失联2监测指标/测点要素3原始要素/设备要素4特征值告警5设备离线比例',
`level` tinyint(1) NULL DEFAULT 1 COMMENT '告警等级',
`alarm_rule` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '具体告警配置',
`create_at` bigint(20) NULL DEFAULT NULL,
`update_at` bigint(20) NULL DEFAULT NULL,
PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8 COLLATE = utf8_general_ci ROW_FORMAT = Dynamic;
-- ----------------------------
-- Table structure for data_device_alarm_rel
-- ----------------------------
CREATE TABLE `data_device_alarm_rel` (
`id` bigint(20) NOT NULL COMMENT 'id',
`device_id` bigint(20) NULL DEFAULT NULL COMMENT '局部告警的设备id',
`application_id` bigint(20) NULL DEFAULT NULL COMMENT '应用id',
`create_at` bigint(20) NULL DEFAULT NULL,
`update_at` bigint(20) NULL DEFAULT NULL,
PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = '局部告警的设备数据表' ROW_FORMAT = Dynamic;
-- ----------------------------
-- Table structure for data_device_monitor_formula
-- ----------------------------
CREATE TABLE `data_device_monitor_formula` (
`id` bigint(20) NOT NULL COMMENT 'id',
`formula` text CHARACTER SET utf8 COLLATE utf8_general_ci NULL COMMENT '计算公式',
`indicator` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '计算获取的指标 多个逗号隔开',
`application_id` bigint(20) NULL DEFAULT NULL COMMENT '应用id',
`monitor_point_id` bigint(20) NULL DEFAULT NULL COMMENT '测点id',
`parameter` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '计算参数 多个逗号隔开',
`tenant_id` bigint(20) NULL DEFAULT NULL COMMENT '租户id',
`type` tinyint(1) NULL DEFAULT NULL COMMENT '类型 0EL 1外部接口 ',
`formula_param` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '公式参数json',
`create_at` bigint(20) NULL DEFAULT NULL,
`update_at` bigint(20) NULL DEFAULT NULL,
PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8 COLLATE = utf8_general_ci ROW_FORMAT = Dynamic;
-- ----------------------------
-- Table structure for data_device_monitor_rel
-- ----------------------------
CREATE TABLE `data_device_monitor_rel` (
`id` bigint(20) UNSIGNED NOT NULL COMMENT 'id',
`server_code` varchar(40) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '服务编码',
`tenant_id` bigint(20) NULL DEFAULT NULL COMMENT '租户id',
`application_id` bigint(20) NULL DEFAULT NULL COMMENT '应用id',
`device_id` bigint(20) NULL DEFAULT NULL COMMENT '设备id',
`template_id` bigint(20) NULL DEFAULT NULL COMMENT '模板id',
`template_field` varchar(20) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '模板字段',
`monitor_indicator` varchar(20) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '监测指标',
`monitor_field` varchar(20) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '监测指标对应的要素',
`monitor_point_id` bigint(20) NULL DEFAULT NULL COMMENT '测点id',
`create_at` bigint(20) NULL DEFAULT NULL,
`update_at` bigint(20) NULL DEFAULT NULL,
PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = '设备的模板以及监测指标之间标识的关系' ROW_FORMAT = Dynamic;
-- ----------------------------
-- Table structure for data_monitor_alarm_rule
-- ----------------------------
CREATE TABLE `data_monitor_alarm_rule` (
`id` bigint(20) UNSIGNED NOT NULL COMMENT 'id',
`application_id` bigint(20) NULL DEFAULT NULL COMMENT '应用id',
`template_id` bigint(20) NULL DEFAULT NULL COMMENT '模板id',
`device_id` bigint(20) NULL DEFAULT NULL COMMENT '设备id',
`tenant_id` bigint(20) NULL DEFAULT NULL COMMENT '租户id',
`monitor_point_id` bigint(20) NULL DEFAULT NULL COMMENT '测点id',
`alarm_name` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '告警名称',
`global_flag` tinyint(1) UNSIGNED NULL DEFAULT 0 COMMENT '使用范围 默认0全局 1局部',
`enable` tinyint(1) NULL DEFAULT 1 COMMENT '是否启用1启用 0关闭',
`push_rule_id` bigint(20) NULL DEFAULT NULL COMMENT '推送规则id',
`create_at` bigint(20) NULL DEFAULT NULL,
`update_at` bigint(20) NULL DEFAULT NULL,
PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = '用于设定监测的告警类型、推送规则以及相关规则' ROW_FORMAT = Dynamic;
SET FOREIGN_KEY_CHECKS = 1;

View File

@ -0,0 +1,4 @@
直角三角 1.4*(#RZ^(2.5))
梯形1.86*#B*(#RZ^(1.5))
无测向(0.402+(0.054*#RZ/#P)*#B*((2*#g)^0.5)*(#RZ^1.5)
RZ水位 B堰口底宽 P堰低 g重力加速度

View File

@ -0,0 +1,184 @@
降水量监测
[
{
"serverCode": "reservoir_monitoring_platform",
"indicator": "300423481063899137",
"fieldBeanList": [
{
"field": "DYP",
"type": "DOUBLE",
"length": 20
},
{
"field": "P1DYP",
"type": "DOUBLE",
"length": 20
},
{
"field": "P2DYP",
"type": "DOUBLE",
"length": 20
},
{
"field": "P3DYP",
"type": "DOUBLE",
"length": 20
},
{
"field": "P6DYP",
"type": "DOUBLE",
"length": 20
},
{
"field": "P12DYP",
"type": "DOUBLE",
"length": 20
},
{
"field": "PN01DYP",
"type": "DOUBLE",
"length": 20
},
{
"field": "PN05DYP",
"type": "DOUBLE",
"length": 20
},
{
"field": "PN10DYP",
"type": "DOUBLE",
"length": 20
},
{
"field": "PN30DYP",
"type": "DOUBLE",
"length": 20
}
]
}
]
水位监测
[
{
"serverCode": "reservoir_monitoring_platform",
"indicator": "300423481063899138",
"fieldBeanList": [
{
"field": "RZ",
"type": "DOUBLE",
"length": 20
},
{
"field": "FLCP",
"type": "DOUBLE",
"length": 20
}
]
}
]
渗压监测
[
{
"serverCode": "reservoir_monitoring_platform",
"indicator": "300423481063899139",
"fieldBeanList": [
{
"field": "SPPRWM",
"type": "DOUBLE",
"length": 20
},
{
"field": "SPPRWL",
"type": "DOUBLE",
"length": 20
}
]
}
]
渗流量监测
[
{
"serverCode": "reservoir_monitoring_platform",
"indicator": "300423481063899140",
"fieldBeanList": [
{
"field": "SPPRWL",
"type": "DOUBLE",
"length": 20
},
{
"field": "RZ",
"type": "DOUBLE",
"length": 20
}
]
}
]
表面变形监测
[
{
"serverCode": "reservoir_monitoring_platform",
"indicator": "300423481063899141",
"fieldBeanList": [
{
"field": "XHRDS",
"type": "DOUBLE",
"length": 20
},
{
"field": "YHRDS",
"type": "DOUBLE",
"length": 20
},
{
"field": "VRDS",
"type": "DOUBLE",
"length": 20
}
]
}
]
指标一:降水量监测 300423481063899137
DYP 日降水量
P1DYP 1小时时段降水量
P2DYP 2小时时段降水量
P3DYP 3小时时段降水量
P6DYP 6小时时段降水量
P12DYP 12小时时段降水量
PN01DYP 1分钟时段降水量
PN05DYP 5分钟时段降水量
PN10DYP 10分钟时段降水量
PN30DYP 30分钟时段降水量
AI 气温
MST 湿度
UC 风向
US 风速
指标二:水位监测 300423481063899138
RZ 库水位
FLCP 库容
指标三:渗压监测 300423481063899139
SPPRWM 渗压水位
SPPRWL 渗流量
指标四:渗流量监测 300423481063899140
SPPRWL 渗流量
RZ 库水位
指标五:表面变形监测 300423481063899141
XHRDS X向水平位移
YHRDS Y向水平位移
VRDS 垂直位移

View File

@ -0,0 +1,12 @@
CREATE STABLE IF NOT EXISTS reservoir_monitoring_platform_Monitor_300423481063899137 ( `ts` timestamp ,`application_id` NCHAR(20), `DYP` DOUBLE , `P1DYP` DOUBLE , `P2DYP` DOUBLE , `P3DYP` DOUBLE , `P6DYP` DOUBLE , `P12DYP` DOUBLE , `PN01DYP` DOUBLE , `PN05DYP` DOUBLE , `PN10DYP` DOUBLE , `PN30DYP` DOUBLE ) TAGS (`info` JSON);
CREATE STABLE IF NOT EXISTS reservoir_monitoring_platform_Monitor_300423481063899138 ( `ts` timestamp ,`application_id` NCHAR(20), `RZ` DOUBLE , `FLCP` DOUBLE ) TAGS (`info` JSON);
CREATE STABLE IF NOT EXISTS reservoir_monitoring_platform_Monitor_300423481063899139 ( `ts` timestamp ,`application_id` NCHAR(20), `SPPRWM` DOUBLE , `SPPRWL` DOUBLE ) TAGS (`info` JSON);
CREATE STABLE IF NOT EXISTS reservoir_monitoring_platform_Monitor_300423481063899140 ( `ts` timestamp ,`application_id` NCHAR(20), `SPPRWL` DOUBLE , `RZ` DOUBLE ) TAGS (`info` JSON);
CREATE STABLE IF NOT EXISTS reservoir_monitoring_platform_Monitor_300423481063899141 ( `ts` timestamp ,`application_id` NCHAR(20), `XHRDS` DOUBLE , `YHRDS` DOUBLE , `VRDS` DOUBLE ) TAGS (`info` JSON);
-- 更新
ALTER STABLE reservoir_monitoring_platform_Monitor_300423481063899137 ADD COLUMN `AI` DOUBLE;
ALTER STABLE reservoir_monitoring_platform_Monitor_300423481063899137 ADD COLUMN `MST` DOUBLE;
ALTER STABLE reservoir_monitoring_platform_Monitor_300423481063899137 ADD COLUMN `UC` NCHAR(4);
ALTER STABLE reservoir_monitoring_platform_Monitor_300423481063899137 ADD COLUMN `US` DOUBLE;

View File

@ -0,0 +1,37 @@
ALTER TABLE `data_alarm_push_condition`
ADD COLUMN `tiger_num` int(10) UNSIGNED NULL DEFAULT 1 COMMENT '多少次报警触发' AFTER `push_object`,
ADD COLUMN `sent_num` int(10) UNSIGNED NULL DEFAULT 1 COMMENT '发送次数(发送对应次数后使用)' AFTER `tiger_num`,
ADD COLUMN `interval_time` decimal(5,2) UNSIGNED NULL DEFAULT 0 COMMENT '间隔时间(小时)' AFTER `sent_num`,
ADD COLUMN `alarm_num` int(10) NULL DEFAULT 0 COMMENT '告警次数,用于统计多少次告警了' AFTER `interval_time`,
ADD COLUMN `has_sent_num` int(10) UNSIGNED NULL DEFAULT 0 COMMENT '已经发送次数' AFTER `alarm_num`;
ADD COLUMN `push_param` text NULL COMMENT '推送参数' AFTER `has_sent_num`;
ADD COLUMN `service_provider` varchar(40) NULL COMMENT '服务方' AFTER `push_param`;
ALTER TABLE `data_alarm_push_record`
ADD COLUMN `alarm_key` varchar(50) NULL COMMENT '告警key' AFTER `alarm_time`;
ALTER TABLE `data_alarm_push_record`
ADD COLUMN `alarm_rule` text NULL COMMENT '推送规则' AFTER `contact_add`;
ALTER TABLE `fourfaith_application_parent`.`data_alarm_push_record`
CHANGE COLUMN `alarm_key` `alarm_value` varchar(50) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '告警key' AFTER `alarm_time`;
ALTER TABLE `fourfaith_application_parent`.`data_alarm_push_record`
MODIFY COLUMN `alarm_value` varchar(50) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '告警value' AFTER `alarm_time`,
ADD COLUMN `alarm_key` varchar(50) NULL COMMENT '告警key' AFTER `alarm_rule`;
ALTER TABLE `data_device_monitor_rel`
DROP COLUMN `monitor_point_name`,
ADD COLUMN `monitor_point_name` varchar(40) NULL COMMENT '测点名称' AFTER `monitor_point_id`;
ALTER TABLE `data_device_monitor_rel`
ADD COLUMN `monitor_tags_name` varchar(40) NULL COMMENT '水库名称 结构名称' AFTER `monitor_point_name`;
ALTER TABLE `data_device_monitor_formula`
ADD COLUMN `init_json` varchar(255) NULL COMMENT '初始值(json)' AFTER `request_url`,
ADD COLUMN `init_flag` tinyint(1) NULL COMMENT '初值是否已经使用1使用 0未使用' AFTER `init_json`;
ALTER TABLE `data_alarm_push_record`
ADD COLUMN `push_rule` text NULL COMMENT '推送规则' AFTER `alarm_key`;

View File

@ -0,0 +1,3 @@
ALTER TABLE `data_device_monitor_formula`
ADD COLUMN `init_json` varchar(255) NULL COMMENT '初始值(json)' AFTER `request_url`,
ADD COLUMN `init_flag` tinyint(1) NULL COMMENT '初值是否已经使用1使用 0未使用' AFTER `init_json`;

View File

@ -0,0 +1,3 @@
CREATE STABLE IF NOT EXISTS structure_platform_backend_monitor_300423481073899002 ( `ts` timestamp , `tilt_x` DOUBLE , `tilt_y` DOUBLE , `tilt_x_current` DOUBLE , `tilt_x_cumulative` DOUBLE , `tilt_y_current` DOUBLE , `tilt_y_cumulative` DOUBLE , `application_id` NCHAR (20) ) TAGS (info JSON);
CREATE STABLE IF NOT EXISTS structure_platform_backend_monitor_300423481073899003 ( `ts` timestamp , `crack` DOUBLE , `crack_current` DOUBLE , `crack_cumulative` DOUBLE , `application_id` NCHAR (20) ) TAGS (info JSON);
CREATE STABLE IF NOT EXISTS structure_platform_backend_monitor_300423481073899001 ( `ts` timestamp , `settlement` DOUBLE , `settlement_current` DOUBLE , `settlement_cumulative` DOUBLE , `application_id` NCHAR (20) ) TAGS (info JSON)

View File

@ -0,0 +1,90 @@
沉降监测
[
{
"serverCode": "structure-platform-backend",
"indicator": "300423481073899001",
"fieldBeanList": [
{
"field": "settlement",
"type": "DOUBLE",
"length": 20
},
{
"field": "settlement_current",
"type": "DOUBLE",
"length": 20
},
{
"field": "settlement_cumulative",
"type": "DOUBLE",
"length": 20
}
]
}
]
裂缝监测
[
{
"serverCode": "structure-platform-backend",
"indicator": "300423481073899003",
"fieldBeanList": [
{
"field": "crack",
"type": "DOUBLE",
"length": 20
},
{
"field": "crack_current",
"type": "DOUBLE",
"length": 20
},
{
"field": "crack_cumulative",
"type": "DOUBLE",
"length": 20
}
]
}
]
倾斜监测
[
{
"serverCode": "structure-platform-backend",
"indicator": "300423481073899002",
"fieldBeanList": [
{
"field": "tilt_x",
"type": "DOUBLE",
"length": 20
},
{
"field": "tilt_y",
"type": "DOUBLE",
"length": 20
},
{
"field": "tilt_x_current",
"type": "DOUBLE",
"length": 20
},
{
"field": "tilt_x_cumulative",
"type": "DOUBLE",
"length": 20
},
{
"field": "tilt_y_current",
"type": "DOUBLE",
"length": 20
},
{
"field": "tilt_y_cumulative",
"type": "DOUBLE",
"length": 20
}
]
}
]

View File

@ -0,0 +1,7 @@
tencent:
sms:
enable: 1
sdk-app-id: 1400590952
sign-name: 厦门四信
secret-id: AKIDf9SWNzNWR7ZrvkJfnhNo13rSpytZ1ECw
secret-key: XqthqmUyHOHwMYVCerpY1ECxTkmZ7PWP

View File

@ -0,0 +1,658 @@
/*
Navicat Premium Data Transfer
Source Server :
Source Server Type : MySQL
Source Server Version : 80033
Source Host : localhost:3306
Source Schema : data_center_new
Target Server Type : MySQL
Target Server Version : 80033
File Encoding : 65001
Date: 08/12/2023 15:30:19
*/
SET NAMES utf8mb4;
SET FOREIGN_KEY_CHECKS = 0;
-- ----------------------------
-- Table structure for data_alarm_device_rel
-- ----------------------------
DROP TABLE IF EXISTS `data_alarm_device_rel`;
CREATE TABLE `data_alarm_device_rel` (
`id` bigint(0) NOT NULL COMMENT 'id',
`alarm_rule_id` bigint(0) NULL DEFAULT NULL,
`device_id` bigint(0) NULL DEFAULT NULL COMMENT '局部告警的设备id',
`access_id` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '设备接入id',
`sn` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '设备SN',
`application_id` bigint(0) NULL DEFAULT NULL COMMENT '应用id',
`create_at` bigint(0) NULL DEFAULT NULL,
`update_at` bigint(0) NULL DEFAULT NULL,
PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb3 COLLATE = utf8mb3_general_ci COMMENT = '局部告警的设备数据表' ROW_FORMAT = Dynamic;
-- ----------------------------
-- Records of data_alarm_device_rel
-- ----------------------------
-- ----------------------------
-- Table structure for data_alarm_log
-- ----------------------------
DROP TABLE IF EXISTS `data_alarm_log`;
CREATE TABLE `data_alarm_log` (
`id` bigint(0) NOT NULL,
`ts` datetime(0) NULL DEFAULT NULL,
`alarm_value` varchar(20) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL,
`level` tinyint(0) NULL DEFAULT NULL,
`tenant_id` bigint(0) NULL DEFAULT NULL,
`application_id` bigint(0) NULL DEFAULT NULL,
`indicator_id` bigint(0) NULL DEFAULT NULL,
`monitor_point_id` bigint(0) NULL DEFAULT NULL,
`alarm_key` varchar(20) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL,
`alarm_type` tinyint(0) NULL DEFAULT NULL,
`status` tinyint(0) NULL DEFAULT NULL,
`alarm_rule_id` bigint(0) NULL DEFAULT NULL,
`device_id` bigint(0) NULL DEFAULT NULL,
`whether_push` tinyint(0) NULL DEFAULT NULL,
`alarm_msg` varchar(128) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL,
`alarm_device_type` tinyint(0) NULL DEFAULT NULL,
`trigger_type` tinyint(0) NULL DEFAULT NULL,
`alarm_object` tinyint(0) NULL DEFAULT 1,
`application_ids` varchar(128) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL,
`trigger_elements` varchar(128) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL,
PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb3 COLLATE = utf8mb3_general_ci ROW_FORMAT = Dynamic;
-- ----------------------------
-- Records of data_alarm_log
-- ----------------------------
-- ----------------------------
-- Table structure for data_alarm_push
-- ----------------------------
DROP TABLE IF EXISTS `data_alarm_push`;
CREATE TABLE `data_alarm_push` (
`id` bigint(0) NOT NULL COMMENT 'id',
`alarm_rule_id` bigint(0) NULL DEFAULT NULL,
`push_name` varchar(64) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '通知名称',
`push_type` varchar(20) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL,
`push_type_name` varchar(20) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '告警通知方式,系统消息,邮件,短信',
`popup_type` tinyint(1) NULL DEFAULT NULL COMMENT '弹窗方式1手动关闭 2自动关闭',
`popup_audio` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '弹窗音频地址',
`application_id` bigint(0) NULL DEFAULT NULL COMMENT '应用id',
`tenant_id` bigint(0) NULL DEFAULT NULL,
`always_push` tinyint(1) NULL DEFAULT NULL COMMENT '每次都推送01',
`cycle_number` int(0) NULL DEFAULT NULL COMMENT '每多少条推送一次',
`max_number` int(0) NULL DEFAULT NULL COMMENT '最多多少条结合ignore_number',
`interval_minutes` int(0) NULL DEFAULT NULL COMMENT '间隔分钟数',
`alarm_push_template_id` bigint(0) NULL DEFAULT NULL,
`enable` tinyint(1) NULL DEFAULT NULL COMMENT '是否可用0禁用1可用',
`push_rule` text CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL COMMENT '告警规则',
`create_at` bigint(0) NULL DEFAULT NULL,
`update_at` bigint(0) NULL DEFAULT NULL,
PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb3 COLLATE = utf8mb3_general_ci COMMENT = '局部告警的设备数据表' ROW_FORMAT = Dynamic;
-- ----------------------------
-- Records of data_alarm_push
-- ----------------------------
-- ----------------------------
-- Table structure for data_alarm_push_condition
-- ----------------------------
DROP TABLE IF EXISTS `data_alarm_push_condition`;
CREATE TABLE `data_alarm_push_condition` (
`id` bigint(0) UNSIGNED NOT NULL COMMENT 'id',
`push_content` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '推送内容',
`level` tinyint(0) UNSIGNED NULL DEFAULT 1 COMMENT '等级',
`application_id` bigint(0) NULL DEFAULT NULL COMMENT '应用id',
`push_type` tinyint(0) UNSIGNED NULL DEFAULT NULL COMMENT '推送类型0 短信 1邮箱',
`contact_info` text CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL COMMENT '联系方式 json数组格式只能存在手机或者邮箱一种',
`monitor_point_id` bigint(0) NULL DEFAULT NULL COMMENT '测点id 水库用',
`rule_id` bigint(0) NULL DEFAULT NULL COMMENT '规则id',
`alarm_status` tinyint(0) UNSIGNED NULL DEFAULT 1 COMMENT '告警状态 1告警状态 0解除告警',
`push_status` tinyint(0) UNSIGNED NULL DEFAULT 0 COMMENT '推送状态,用于处理恢复时每条规则都推送情况 0未推送1已推送',
`push_object` text CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL COMMENT '推送对象,用于设备管家回显',
`tiger_num` int(0) UNSIGNED NULL DEFAULT 1 COMMENT '多少次报警触发',
`sent_num` int(0) UNSIGNED NULL DEFAULT 1 COMMENT '发送次数(发送对应次数后使用)',
`interval_time` decimal(5, 2) UNSIGNED NULL DEFAULT NULL COMMENT '间隔时间(小时)',
`alarm_num` int(0) NULL DEFAULT 0 COMMENT '告警次数,用于统计多少次告警了',
`has_sent_num` int(0) UNSIGNED NULL DEFAULT 0 COMMENT '已经发送次数',
`push_param` text CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL COMMENT '推送参数',
`service_provider` varchar(40) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '服务方',
`create_at` bigint(0) NULL DEFAULT NULL COMMENT '创建时间',
`update_at` bigint(0) NULL DEFAULT NULL COMMENT '更新时间',
PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb3 COLLATE = utf8mb3_general_ci COMMENT = '需要告警后推送的条件' ROW_FORMAT = Dynamic;
-- ----------------------------
-- Records of data_alarm_push_condition
-- ----------------------------
-- ----------------------------
-- Table structure for data_alarm_push_log
-- ----------------------------
DROP TABLE IF EXISTS `data_alarm_push_log`;
CREATE TABLE `data_alarm_push_log` (
`id` bigint(0) NOT NULL,
`alarm_rule_id` bigint(0) NULL DEFAULT NULL,
`alarm_push_id` bigint(0) NULL DEFAULT NULL COMMENT '告警推送配置id',
`alarm_push_template_id` bigint(0) NULL DEFAULT NULL COMMENT '告警推送模板id',
`push_content` text CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL COMMENT '推送内容',
`push_type` varchar(20) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '推送类型systemsmsemail',
`status` tinyint(1) NULL DEFAULT NULL COMMENT '推送状态0失败1成功',
`indicator_id` bigint(0) NULL DEFAULT NULL COMMENT '监测指标id',
`monitor_point_id` bigint(0) NULL DEFAULT NULL COMMENT '测点id',
`device_id` bigint(0) NULL DEFAULT NULL,
`trigger_type` tinyint(1) NULL DEFAULT NULL COMMENT '触发器类型0设备离线1设备失联2监测要素3监测指标4特征值告警5设备离线比例',
`level` tinyint(0) UNSIGNED NULL DEFAULT 0 COMMENT '告警等级',
`push_time` datetime(0) NULL DEFAULT NULL COMMENT '告警推送时间',
`user_name` varchar(50) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '用户名称',
`real_name` varchar(50) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '用户名',
`phone_number` varchar(50) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '手机号',
`email` varchar(50) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '邮箱',
`tenant_id` bigint(0) NULL DEFAULT NULL COMMENT '租户id',
`application_id` bigint(0) NULL DEFAULT NULL COMMENT '应用id',
`user_id` bigint(0) NULL DEFAULT NULL,
`wait_number` int(0) NULL DEFAULT 0,
`create_at` bigint(0) NULL DEFAULT NULL COMMENT '推送时间',
`update_at` bigint(0) NULL DEFAULT NULL COMMENT '更新时间',
PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb3 COLLATE = utf8mb3_general_ci ROW_FORMAT = Dynamic;
-- ----------------------------
-- Records of data_alarm_push_log
-- ----------------------------
-- ----------------------------
-- Table structure for data_alarm_push_record
-- ----------------------------
DROP TABLE IF EXISTS `data_alarm_push_record`;
CREATE TABLE `data_alarm_push_record` (
`id` bigint(0) NOT NULL,
`push_content` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '推送内容',
`push_type` tinyint(1) NULL DEFAULT NULL COMMENT '推送类型',
`status` tinyint(1) NULL DEFAULT NULL COMMENT '推送状态',
`monitor_indicator` varchar(40) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '监测指标',
`monitor_point_id` bigint(0) NULL DEFAULT NULL COMMENT '测点id',
`level` tinyint(0) UNSIGNED NULL DEFAULT 0 COMMENT '告警等级',
`reservoir_id` bigint(0) NULL DEFAULT NULL COMMENT '水库id',
`alarm_type` tinyint(1) NULL DEFAULT NULL COMMENT '告警类型',
`push_condition_id` bigint(0) NULL DEFAULT NULL COMMENT '推送条件id',
`application_id` bigint(0) NULL DEFAULT NULL COMMENT '应用id',
`alarm_time` varchar(50) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '告警时间',
`alarm_key` varchar(50) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '告警key',
`push_rule` text CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL COMMENT '推送规则',
`alarm_value` varchar(50) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '告警value',
`contact_add` text CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL COMMENT '联系地址',
`alarm_rule` text CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL COMMENT '告警规则',
`create_at` bigint(0) NULL DEFAULT NULL COMMENT '推送时间',
`update_at` bigint(0) NULL DEFAULT NULL COMMENT '更新时间',
PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb3 COLLATE = utf8mb3_general_ci ROW_FORMAT = Dynamic;
-- ----------------------------
-- Records of data_alarm_push_record
-- ----------------------------
-- ----------------------------
-- Table structure for data_alarm_push_tag_rel
-- ----------------------------
DROP TABLE IF EXISTS `data_alarm_push_tag_rel`;
CREATE TABLE `data_alarm_push_tag_rel` (
`id` bigint(0) UNSIGNED NOT NULL COMMENT 'id',
`tenant_id` bigint(0) NULL DEFAULT NULL COMMENT '租户id',
`application_id` bigint(0) NULL DEFAULT NULL COMMENT '应用id',
`tag_key` varchar(20) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '标签key',
`tag_value` bigint(0) NULL DEFAULT NULL COMMENT '标签值',
`alarm_push_id` bigint(0) NULL DEFAULT NULL COMMENT '告警推送id',
`create_at` bigint(0) NULL DEFAULT NULL,
`update_at` bigint(0) NULL DEFAULT NULL,
PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb3 COLLATE = utf8mb3_general_ci COMMENT = '设备的模板以及监测指标之间标识的关系' ROW_FORMAT = Dynamic;
-- ----------------------------
-- Records of data_alarm_push_tag_rel
-- ----------------------------
-- ----------------------------
-- Table structure for data_alarm_push_template
-- ----------------------------
DROP TABLE IF EXISTS `data_alarm_push_template`;
CREATE TABLE `data_alarm_push_template` (
`id` bigint(0) NOT NULL COMMENT 'id',
`push_type` varchar(20) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL,
`push_type_name` varchar(20) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '告警通知方式,系统消息,邮件,短信',
`push_template_name` varchar(64) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL,
`push_template_content` text CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL,
`enable` tinyint(1) NULL DEFAULT NULL COMMENT '是否启用1启用 0关闭',
`remark` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL,
`application_id` bigint(0) NULL DEFAULT NULL COMMENT '应用id',
`tenant_id` bigint(0) NULL DEFAULT NULL,
`create_at` datetime(0) NULL DEFAULT NULL,
`update_at` datetime(0) NULL DEFAULT NULL,
PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb3 COLLATE = utf8mb3_general_ci COMMENT = '局部告警的设备数据表' ROW_FORMAT = Dynamic;
-- ----------------------------
-- Records of data_alarm_push_template
-- ----------------------------
-- ----------------------------
-- Table structure for data_alarm_push_template_tag_rel
-- ----------------------------
DROP TABLE IF EXISTS `data_alarm_push_template_tag_rel`;
CREATE TABLE `data_alarm_push_template_tag_rel` (
`id` bigint(0) UNSIGNED NOT NULL COMMENT 'id',
`tenant_id` bigint(0) NULL DEFAULT NULL COMMENT '租户id',
`application_id` bigint(0) NULL DEFAULT NULL COMMENT '应用id',
`tag_key` varchar(20) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '标签key',
`tag_value` bigint(0) NULL DEFAULT NULL COMMENT '标签值',
`alarm_push_template_id` bigint(0) NULL DEFAULT NULL COMMENT '告警推送模板id',
`create_at` bigint(0) NULL DEFAULT NULL,
`update_at` bigint(0) NULL DEFAULT NULL,
PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb3 COLLATE = utf8mb3_general_ci COMMENT = '设备的模板以及监测指标之间标识的关系' ROW_FORMAT = Dynamic;
-- ----------------------------
-- Records of data_alarm_push_template_tag_rel
-- ----------------------------
-- ----------------------------
-- Table structure for data_alarm_push_user
-- ----------------------------
DROP TABLE IF EXISTS `data_alarm_push_user`;
CREATE TABLE `data_alarm_push_user` (
`id` bigint(0) UNSIGNED NOT NULL COMMENT 'id',
`alarm_rule_id` bigint(0) NULL DEFAULT NULL,
`user_id` bigint(0) NULL DEFAULT NULL,
`user_name` varchar(50) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '用户名',
`real_name` varchar(50) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL,
`phone_number` varchar(50) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL,
`email` varchar(50) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL,
`alarm_push_id` bigint(0) NULL DEFAULT NULL COMMENT '告警推送id',
`create_at` bigint(0) NULL DEFAULT NULL,
`update_at` bigint(0) NULL DEFAULT NULL,
`tenant_id` bigint(0) NULL DEFAULT NULL,
`application_id` bigint(0) NULL DEFAULT NULL,
`user_center_super` tinyint(1) NULL DEFAULT NULL,
`application_super` tinyint(1) NULL DEFAULT NULL,
PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb3 COLLATE = utf8mb3_general_ci COMMENT = '设备的模板以及监测指标之间标识的关系' ROW_FORMAT = Dynamic;
-- ----------------------------
-- Records of data_alarm_push_user
-- ----------------------------
-- ----------------------------
-- Table structure for data_alarm_rule
-- ----------------------------
DROP TABLE IF EXISTS `data_alarm_rule`;
CREATE TABLE `data_alarm_rule` (
`id` bigint(0) UNSIGNED NOT NULL COMMENT 'id',
`unique_id` varchar(64) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL,
`application_id` bigint(0) NULL DEFAULT NULL COMMENT '应用id',
`template_id` bigint(0) NULL DEFAULT NULL COMMENT '模板id',
`device_id` bigint(0) NULL DEFAULT NULL COMMENT '设备id',
`tenant_id` bigint(0) NULL DEFAULT NULL COMMENT '租户id',
`product_id` bigint(0) NULL DEFAULT NULL,
`monitor_point_id` bigint(0) NULL DEFAULT NULL COMMENT '测点id',
`alarm_name` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '告警名称',
`global_flag` tinyint(0) UNSIGNED NULL DEFAULT 0 COMMENT '使用范围 默认0全局 1局部',
`enable` tinyint(1) NULL DEFAULT 1 COMMENT '是否启用1启用 0关闭',
`alarm_object` tinyint(1) NULL DEFAULT 1 COMMENT '告警对象0设备1测点。',
`line_type` tinyint(1) NULL DEFAULT 0 COMMENT '组合形式0按等级排序1and2or。',
`alarm_device_type` tinyint(1) NULL DEFAULT 0 COMMENT '告警设备类型0具体设备1同产品型号设备2同租户设备3同应用设备4同设备模板设备',
`trigger_type` tinyint(1) NULL DEFAULT 0 COMMENT '触发器类型0设备离线1设备失联2监测要素3监测指标4特征值告警5设备离线比例',
`user_name` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '用户名',
`whether_summary` bigint(0) NULL DEFAULT NULL COMMENT '是否汇总',
`alarm_msg` varchar(128) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL,
`create_at` datetime(0) NULL DEFAULT NULL,
`update_at` datetime(0) NULL DEFAULT NULL,
PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb3 COLLATE = utf8mb3_general_ci COMMENT = '用于设定监测的告警类型、推送规则以及相关规则' ROW_FORMAT = Dynamic;
-- ----------------------------
-- Records of data_alarm_rule
-- ----------------------------
-- ----------------------------
-- Table structure for data_alarm_rule_rel
-- ----------------------------
DROP TABLE IF EXISTS `data_alarm_rule_rel`;
CREATE TABLE `data_alarm_rule_rel` (
`id` bigint(0) NOT NULL COMMENT 'id',
`monitor_alarm_id` bigint(0) NULL DEFAULT NULL COMMENT '告警规则 json格式',
`alarm_type` tinyint(0) UNSIGNED NULL DEFAULT NULL COMMENT '告警类型 0设备离线、1设备失联、2监测要素、3监测指标',
`level` tinyint(1) NULL DEFAULT 1 COMMENT '告警等级',
`alarm_rule` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '具体告警配置',
`aviator` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '规则表达式',
`create_at` bigint(0) NULL DEFAULT NULL,
`update_at` bigint(0) NULL DEFAULT NULL,
PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb3 COLLATE = utf8mb3_general_ci ROW_FORMAT = Dynamic;
-- ----------------------------
-- Records of data_alarm_rule_rel
-- ----------------------------
-- ----------------------------
-- Table structure for data_alarm_sub_rule
-- ----------------------------
DROP TABLE IF EXISTS `data_alarm_sub_rule`;
CREATE TABLE `data_alarm_sub_rule` (
`id` bigint(0) NOT NULL COMMENT 'id',
`alarm_rule_id` bigint(0) NULL DEFAULT NULL COMMENT '告警规则 json格式',
`level` tinyint(1) NULL DEFAULT 1 COMMENT '告警等级',
`alarm_rule` text CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL COMMENT '具体告警配置',
`dead_zone` double NULL DEFAULT NULL COMMENT '死区',
`offline_duration` int(0) NULL DEFAULT NULL COMMENT '离线时长检测',
`duration` int(0) NULL DEFAULT NULL,
`offline_times` int(0) NULL DEFAULT NULL,
`offline_percent` int(0) NULL DEFAULT NULL,
`aviator` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '规则表达式',
`ignore_aviator` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '死区、步长设置,用于判断数据是否忽略告警',
`alarm_value_field` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL,
`create_at` bigint(0) NULL DEFAULT NULL,
`update_at` bigint(0) NULL DEFAULT NULL,
PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb3 COLLATE = utf8mb3_general_ci ROW_FORMAT = Dynamic;
-- ----------------------------
-- Records of data_alarm_sub_rule
-- ----------------------------
-- ----------------------------
-- Table structure for data_alarm_summary
-- ----------------------------
DROP TABLE IF EXISTS `data_alarm_summary`;
CREATE TABLE `data_alarm_summary` (
`id` bigint(0) UNSIGNED NOT NULL,
`ts` timestamp(0) NULL DEFAULT NULL,
`alarm_rule_id` bigint(0) NULL DEFAULT NULL,
`alarm_end_time` timestamp(0) NULL DEFAULT NULL,
`new_ts` timestamp(0) NULL DEFAULT NULL,
`release_time` timestamp(0) NULL DEFAULT NULL,
`alarm_key` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL,
`alarm_value` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL,
`alarm_name` varchar(64) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL,
`alarm_type` tinyint(0) NULL DEFAULT NULL,
`status` tinyint(0) NULL DEFAULT NULL,
`flow_status` tinyint(0) NULL DEFAULT 0 COMMENT '流转状态,1:已流转;0:未流转',
`level` tinyint(0) NULL DEFAULT NULL,
`device_id` bigint(0) NULL DEFAULT NULL,
`monitor_point_id` bigint(0) NULL DEFAULT NULL,
`monitor_point_name` varchar(64) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL,
`alarm_rule` varchar(64) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL,
`push_condition_id` bigint(0) NULL DEFAULT NULL,
`monitor_tags_name` varchar(64) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL,
`indicator_id` bigint(0) NULL DEFAULT NULL,
`application_id` bigint(0) NULL DEFAULT NULL,
`tenant_id` bigint(0) NULL DEFAULT NULL,
`last_one` int(0) NULL DEFAULT 1,
`create_at` bigint(0) NULL DEFAULT NULL,
`update_at` bigint(0) NULL DEFAULT NULL,
PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb3 COLLATE = utf8mb3_general_ci ROW_FORMAT = Dynamic;
-- ----------------------------
-- Records of data_alarm_summary
-- ----------------------------
-- ----------------------------
-- Table structure for data_device_alarm_rel
-- ----------------------------
DROP TABLE IF EXISTS `data_device_alarm_rel`;
CREATE TABLE `data_device_alarm_rel` (
`id` bigint(0) NOT NULL COMMENT 'id',
`device_id` bigint(0) NULL DEFAULT NULL COMMENT '设备id',
`device_name` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '设备名称',
`alarm_time` datetime(0) NULL DEFAULT NULL COMMENT '告警时间',
`status` tinyint(1) NULL DEFAULT NULL COMMENT '状态 0:未处理;1:已处理',
`alarm_key` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '告警键值',
`alarm_value` double NULL DEFAULT NULL COMMENT '告警数据',
`alarm_name` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '告警名称',
`handle_user` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '处理人',
`handle_time` datetime(0) NULL DEFAULT NULL COMMENT '处理时间',
`handle_remark` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '处理备注',
`application_ids` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '应用ids',
`tenant_id` bigint(0) NULL DEFAULT NULL COMMENT '租户id',
`create_at` bigint(0) NULL DEFAULT NULL,
`update_at` bigint(0) NULL DEFAULT NULL,
PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb3 COLLATE = utf8mb3_general_ci COMMENT = '预警广播设备告警数据表' ROW_FORMAT = Dynamic;
-- ----------------------------
-- Records of data_device_alarm_rel
-- ----------------------------
-- ----------------------------
-- Table structure for data_device_monitor_formula
-- ----------------------------
DROP TABLE IF EXISTS `data_device_monitor_formula`;
CREATE TABLE `data_device_monitor_formula` (
`id` bigint(0) NOT NULL COMMENT 'id',
`formula` text CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL COMMENT '计算公式',
`indicator` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '计算获取的指标 多个逗号隔开',
`application_id` bigint(0) NULL DEFAULT NULL COMMENT '应用id',
`monitor_point_id` bigint(0) NULL DEFAULT NULL COMMENT '测点id',
`parameter` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '计算参数 多个逗号隔开',
`tenant_id` bigint(0) NULL DEFAULT NULL COMMENT '租户id',
`type` tinyint(1) NULL DEFAULT NULL COMMENT '类型 0EL 1外部接口 ',
`formula_param` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '公式参数json',
`request_url` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '请求地址',
`init_json` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '初始值(json)',
`init_flag` tinyint(1) NULL DEFAULT NULL COMMENT '初值是否已经使用1使用 0未使用',
`create_at` bigint(0) NULL DEFAULT NULL,
`update_at` bigint(0) NULL DEFAULT NULL,
PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb3 COLLATE = utf8mb3_general_ci ROW_FORMAT = Dynamic;
-- ----------------------------
-- Records of data_device_monitor_formula
-- ----------------------------
-- ----------------------------
-- Table structure for data_device_monitor_rel
-- ----------------------------
DROP TABLE IF EXISTS `data_device_monitor_rel`;
CREATE TABLE `data_device_monitor_rel` (
`id` bigint(0) UNSIGNED NOT NULL COMMENT 'id',
`server_code` varchar(40) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '服务编码',
`tenant_id` bigint(0) NULL DEFAULT NULL COMMENT '租户id',
`application_id` bigint(0) NULL DEFAULT NULL COMMENT '应用id',
`device_id` bigint(0) NULL DEFAULT NULL COMMENT '设备id',
`template_id` bigint(0) NULL DEFAULT NULL COMMENT '模板id',
`template_field` varchar(20) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '模板字段',
`monitor_indicator` varchar(20) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '监测指标',
`monitor_field` varchar(20) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '监测指标对应的要素',
`monitor_point_id` bigint(0) NULL DEFAULT NULL COMMENT '测点id',
`monitor_point_name` varchar(40) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '测点名称',
`monitor_tags_name` varchar(40) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '水库名称 结构名称',
`base_point` tinyint(0) UNSIGNED NULL DEFAULT 0 COMMENT '是否为基站点0否1是 默认是,数据不做处理',
`base_id` bigint(0) NULL DEFAULT NULL COMMENT '基站点ID 不为基站点时才有',
`create_at` bigint(0) NULL DEFAULT NULL,
`update_at` bigint(0) NULL DEFAULT NULL,
PRIMARY KEY (`id`) USING BTREE,
UNIQUE INDEX `INDEX_UK_MONITORID_FIELD`(`monitor_field`, `monitor_point_id`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb3 COLLATE = utf8mb3_general_ci COMMENT = '设备的模板以及监测指标之间标识的关系' ROW_FORMAT = Dynamic;
-- ----------------------------
-- Records of data_device_monitor_rel
-- ----------------------------
-- ----------------------------
-- Table structure for data_indicator_constant
-- ----------------------------
DROP TABLE IF EXISTS `data_indicator_constant`;
CREATE TABLE `data_indicator_constant` (
`id` bigint(0) NOT NULL COMMENT 'id',
`indicator_id` bigint(0) NULL DEFAULT NULL,
`server_code` varchar(64) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL,
`constant_key` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '监测指标常量key',
`create_at` bigint(0) NULL DEFAULT NULL,
`update_at` bigint(0) NULL DEFAULT NULL,
PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb3 COLLATE = utf8mb3_general_ci ROW_FORMAT = Dynamic;
-- ----------------------------
-- Records of data_indicator_constant
-- ----------------------------
-- ----------------------------
-- Table structure for data_indicator_output_formula
-- ----------------------------
DROP TABLE IF EXISTS `data_indicator_output_formula`;
CREATE TABLE `data_indicator_output_formula` (
`id` bigint(0) NOT NULL COMMENT 'id',
`indicator_id` bigint(0) NULL DEFAULT NULL,
`server_code` varchar(64) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL,
`formula_type` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '公式类型raw原始值,aviator动态公式,fixed固定公式',
`method_annotation` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '方法标注hourly_sum小时累积,daily_sum日累积,monthly_sum月累积,annually_sum年累积,hourly_average小时平均,daily_average日平均,monthly_average月平均,annually_average年平均',
`formula_content` text CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL COMMENT '公式内容',
`output_indicator` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '输出指标要素',
`field_group` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '字段组,多个固定方法需要存储于同一张表时使用',
`base_point_logic` tinyint(1) NULL DEFAULT 0 COMMENT '1有基站点逻辑 0无基站点逻辑',
`element_precision` int(0) NULL DEFAULT 4 COMMENT '精度',
`remark` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '字段备注',
`create_at` bigint(0) NULL DEFAULT NULL,
`update_at` bigint(0) NULL DEFAULT NULL,
PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb3 COLLATE = utf8mb3_general_ci ROW_FORMAT = Dynamic;
-- ----------------------------
-- Records of data_indicator_output_formula
-- ----------------------------
-- ----------------------------
-- Table structure for data_indicator_output_formula_rel
-- ----------------------------
DROP TABLE IF EXISTS `data_indicator_output_formula_rel`;
CREATE TABLE `data_indicator_output_formula_rel` (
`id` bigint(0) NOT NULL COMMENT 'id',
`sever_formula_id` bigint(0) NULL DEFAULT NULL,
`tenant_id` bigint(0) NULL DEFAULT NULL COMMENT '租户id',
`application_id` bigint(0) NULL DEFAULT NULL COMMENT '应用id',
`create_at` bigint(0) NULL DEFAULT NULL,
`update_at` bigint(0) NULL DEFAULT NULL,
PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb3 COLLATE = utf8mb3_general_ci ROW_FORMAT = Dynamic;
-- ----------------------------
-- Records of data_indicator_output_formula_rel
-- ----------------------------
-- ----------------------------
-- Table structure for data_indicator_point
-- ----------------------------
DROP TABLE IF EXISTS `data_indicator_point`;
CREATE TABLE `data_indicator_point` (
`id` bigint(0) UNSIGNED NOT NULL COMMENT 'id',
`server_code` varchar(40) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '服务编码',
`tenant_id` bigint(0) NULL DEFAULT NULL COMMENT '租户id',
`application_id` bigint(0) NULL DEFAULT NULL COMMENT '应用id',
`indicator_id` bigint(0) NULL DEFAULT NULL COMMENT '监测指标id',
`device_id` bigint(0) NULL DEFAULT NULL COMMENT '设备id',
`template_id` bigint(0) NULL DEFAULT NULL COMMENT '模板id',
`monitor_point_id` bigint(0) NULL DEFAULT NULL COMMENT '测点id',
`monitor_point_name` varchar(40) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '测点名称',
`base_point` tinyint(0) UNSIGNED NULL DEFAULT 0 COMMENT '是否为基站点0否1是 默认是,数据不做处理',
`base_id` bigint(0) NULL DEFAULT NULL COMMENT '基站点ID 不为基站点时才有',
`monitor_tags_name` varchar(40) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '水库名称 结构名称',
`init_json` text CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL COMMENT '初始化参数,json格式',
`create_at` bigint(0) NULL DEFAULT NULL,
`update_at` bigint(0) NULL DEFAULT NULL,
PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb3 COLLATE = utf8mb3_general_ci COMMENT = '设备的模板以及监测指标之间标识的关系' ROW_FORMAT = Dynamic;
-- ----------------------------
-- Records of data_indicator_point
-- ----------------------------
-- ----------------------------
-- Table structure for data_indicator_point_device_rel
-- ----------------------------
DROP TABLE IF EXISTS `data_indicator_point_device_rel`;
CREATE TABLE `data_indicator_point_device_rel` (
`id` bigint(0) UNSIGNED NOT NULL COMMENT 'id',
`tenant_id` bigint(0) NULL DEFAULT NULL COMMENT '租户id',
`application_id` bigint(0) NULL DEFAULT NULL COMMENT '应用id',
`template_field` varchar(20) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '模板字段',
`monitor_field` varchar(20) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '监测指标对应的要素',
`monitor_point_id` bigint(0) NULL DEFAULT NULL COMMENT '测点id',
`create_at` bigint(0) NULL DEFAULT NULL,
`update_at` bigint(0) NULL DEFAULT NULL,
PRIMARY KEY (`id`) USING BTREE,
UNIQUE INDEX `INDEX_UK_MONITORID_FIELD`(`monitor_field`, `monitor_point_id`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb3 COLLATE = utf8mb3_general_ci COMMENT = '设备的模板以及监测指标之间标识的关系' ROW_FORMAT = Dynamic;
-- ----------------------------
-- Records of data_indicator_point_device_rel
-- ----------------------------
-- ----------------------------
-- Table structure for data_indicator_point_tag_rel
-- ----------------------------
DROP TABLE IF EXISTS `data_indicator_point_tag_rel`;
CREATE TABLE `data_indicator_point_tag_rel` (
`id` bigint(0) UNSIGNED NOT NULL COMMENT 'id',
`tenant_id` bigint(0) NULL DEFAULT NULL COMMENT '租户id',
`application_id` bigint(0) NULL DEFAULT NULL COMMENT '应用id',
`tag_key` varchar(20) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '标签key',
`tag_value` varchar(20) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '标签值',
`monitor_point_id` bigint(0) NULL DEFAULT NULL COMMENT '测点id',
`create_at` bigint(0) NULL DEFAULT NULL,
`update_at` bigint(0) NULL DEFAULT NULL,
PRIMARY KEY (`id`) USING BTREE,
UNIQUE INDEX `INDEX_UK_MONITORID_FIELD`(`tag_value`, `monitor_point_id`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb3 COLLATE = utf8mb3_general_ci COMMENT = '设备的模板以及监测指标之间标识的关系' ROW_FORMAT = Dynamic;
-- ----------------------------
-- Records of data_indicator_point_tag_rel
-- ----------------------------
-- ----------------------------
-- Table structure for data_monitor_alarm_rule
-- ----------------------------
DROP TABLE IF EXISTS `data_monitor_alarm_rule`;
CREATE TABLE `data_monitor_alarm_rule` (
`id` bigint(0) UNSIGNED NOT NULL COMMENT 'id',
`application_id` bigint(0) NULL DEFAULT NULL COMMENT '应用id',
`template_id` bigint(0) NULL DEFAULT NULL COMMENT '模板id',
`device_id` bigint(0) NULL DEFAULT NULL COMMENT '设备id',
`tenant_id` bigint(0) NULL DEFAULT NULL COMMENT '租户id',
`monitor_point_id` bigint(0) NULL DEFAULT NULL COMMENT '测点id',
`alarm_name` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '告警名称',
`global_flag` tinyint(0) UNSIGNED NULL DEFAULT 0 COMMENT '使用范围 默认0全局 1局部',
`enable` tinyint(1) NULL DEFAULT 1 COMMENT '是否启用1启用 0关闭',
`push_rule_id` bigint(0) NULL DEFAULT NULL COMMENT '推送规则id',
`create_at` bigint(0) NULL DEFAULT NULL,
`update_at` bigint(0) NULL DEFAULT NULL,
PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb3 COLLATE = utf8mb3_general_ci COMMENT = '用于设定监测的告警类型、推送规则以及相关规则' ROW_FORMAT = Dynamic;
-- ----------------------------
-- Records of data_monitor_alarm_rule
-- ----------------------------
-- ----------------------------
-- Table structure for data_push_file_message
-- ----------------------------
DROP TABLE IF EXISTS `data_push_file_message`;
CREATE TABLE `data_push_file_message` (
`id` bigint(0) NOT NULL,
`even_json` text CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL COMMENT 'json',
`file_name` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '文件名称',
`deal_flag` tinyint(0) UNSIGNED NULL DEFAULT 0 COMMENT '1已处理0未处理',
`create_at` bigint(0) NULL DEFAULT NULL COMMENT '创建时间',
`update_at` bigint(0) NULL DEFAULT NULL COMMENT '更新时间',
PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = latin1 COLLATE = latin1_swedish_ci ROW_FORMAT = Dynamic;
-- ----------------------------
-- Records of data_push_file_message
-- ----------------------------
SET FOREIGN_KEY_CHECKS = 1;

View File

@ -0,0 +1,658 @@
/*
Navicat Premium Data Transfer
Source Server :
Source Server Type : MySQL
Source Server Version : 80033
Source Host : localhost:3306
Source Schema : data_center_new
Target Server Type : MySQL
Target Server Version : 80033
File Encoding : 65001
Date: 08/12/2023 15:30:19
*/
SET NAMES utf8mb4;
SET FOREIGN_KEY_CHECKS = 0;
-- ----------------------------
-- Table structure for data_alarm_device_rel
-- ----------------------------
DROP TABLE IF EXISTS `data_alarm_device_rel`;
CREATE TABLE `data_alarm_device_rel` (
`id` bigint(0) NOT NULL COMMENT 'id',
`alarm_rule_id` bigint(0) NULL DEFAULT NULL,
`device_id` bigint(0) NULL DEFAULT NULL COMMENT '局部告警的设备id',
`access_id` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '设备接入id',
`sn` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '设备SN',
`application_id` bigint(0) NULL DEFAULT NULL COMMENT '应用id',
`create_at` bigint(0) NULL DEFAULT NULL,
`update_at` bigint(0) NULL DEFAULT NULL,
PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb3 COLLATE = utf8mb3_general_ci COMMENT = '局部告警的设备数据表' ROW_FORMAT = Dynamic;
-- ----------------------------
-- Records of data_alarm_device_rel
-- ----------------------------
-- ----------------------------
-- Table structure for data_alarm_log
-- ----------------------------
DROP TABLE IF EXISTS `data_alarm_log`;
CREATE TABLE `data_alarm_log` (
`id` bigint(0) NOT NULL,
`ts` datetime(0) NULL DEFAULT NULL,
`alarm_value` varchar(20) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL,
`level` tinyint(0) NULL DEFAULT NULL,
`tenant_id` bigint(0) NULL DEFAULT NULL,
`application_id` bigint(0) NULL DEFAULT NULL,
`indicator_id` bigint(0) NULL DEFAULT NULL,
`monitor_point_id` bigint(0) NULL DEFAULT NULL,
`alarm_key` varchar(20) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL,
`alarm_type` tinyint(0) NULL DEFAULT NULL,
`status` tinyint(0) NULL DEFAULT NULL,
`alarm_rule_id` bigint(0) NULL DEFAULT NULL,
`device_id` bigint(0) NULL DEFAULT NULL,
`whether_push` tinyint(0) NULL DEFAULT NULL,
`alarm_msg` varchar(128) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL,
`alarm_device_type` tinyint(0) NULL DEFAULT NULL,
`trigger_type` tinyint(0) NULL DEFAULT NULL,
`alarm_object` tinyint(0) NULL DEFAULT 1,
`application_ids` varchar(128) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL,
`trigger_elements` varchar(128) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL,
PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb3 COLLATE = utf8mb3_general_ci ROW_FORMAT = Dynamic;
-- ----------------------------
-- Records of data_alarm_log
-- ----------------------------
-- ----------------------------
-- Table structure for data_alarm_push
-- ----------------------------
DROP TABLE IF EXISTS `data_alarm_push`;
CREATE TABLE `data_alarm_push` (
`id` bigint(0) NOT NULL COMMENT 'id',
`alarm_rule_id` bigint(0) NULL DEFAULT NULL,
`push_name` varchar(64) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '通知名称',
`push_type` varchar(20) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL,
`push_type_name` varchar(20) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '告警通知方式,系统消息,邮件,短信',
`popup_type` tinyint(1) NULL DEFAULT NULL COMMENT '弹窗方式1手动关闭 2自动关闭',
`popup_audio` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '弹窗音频地址',
`application_id` bigint(0) NULL DEFAULT NULL COMMENT '应用id',
`tenant_id` bigint(0) NULL DEFAULT NULL,
`always_push` tinyint(1) NULL DEFAULT NULL COMMENT '每次都推送01',
`cycle_number` int(0) NULL DEFAULT NULL COMMENT '每多少条推送一次',
`max_number` int(0) NULL DEFAULT NULL COMMENT '最多多少条结合ignore_number',
`interval_minutes` int(0) NULL DEFAULT NULL COMMENT '间隔分钟数',
`alarm_push_template_id` bigint(0) NULL DEFAULT NULL,
`enable` tinyint(1) NULL DEFAULT NULL COMMENT '是否可用0禁用1可用',
`push_rule` text CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL COMMENT '告警规则',
`create_at` bigint(0) NULL DEFAULT NULL,
`update_at` bigint(0) NULL DEFAULT NULL,
PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb3 COLLATE = utf8mb3_general_ci COMMENT = '局部告警的设备数据表' ROW_FORMAT = Dynamic;
-- ----------------------------
-- Records of data_alarm_push
-- ----------------------------
-- ----------------------------
-- Table structure for data_alarm_push_condition
-- ----------------------------
DROP TABLE IF EXISTS `data_alarm_push_condition`;
CREATE TABLE `data_alarm_push_condition` (
`id` bigint(0) UNSIGNED NOT NULL COMMENT 'id',
`push_content` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '推送内容',
`level` tinyint(0) UNSIGNED NULL DEFAULT 1 COMMENT '等级',
`application_id` bigint(0) NULL DEFAULT NULL COMMENT '应用id',
`push_type` tinyint(0) UNSIGNED NULL DEFAULT NULL COMMENT '推送类型0 短信 1邮箱',
`contact_info` text CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL COMMENT '联系方式 json数组格式只能存在手机或者邮箱一种',
`monitor_point_id` bigint(0) NULL DEFAULT NULL COMMENT '测点id 水库用',
`rule_id` bigint(0) NULL DEFAULT NULL COMMENT '规则id',
`alarm_status` tinyint(0) UNSIGNED NULL DEFAULT 1 COMMENT '告警状态 1告警状态 0解除告警',
`push_status` tinyint(0) UNSIGNED NULL DEFAULT 0 COMMENT '推送状态,用于处理恢复时每条规则都推送情况 0未推送1已推送',
`push_object` text CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL COMMENT '推送对象,用于设备管家回显',
`tiger_num` int(0) UNSIGNED NULL DEFAULT 1 COMMENT '多少次报警触发',
`sent_num` int(0) UNSIGNED NULL DEFAULT 1 COMMENT '发送次数(发送对应次数后使用)',
`interval_time` decimal(5, 2) UNSIGNED NULL DEFAULT NULL COMMENT '间隔时间(小时)',
`alarm_num` int(0) NULL DEFAULT 0 COMMENT '告警次数,用于统计多少次告警了',
`has_sent_num` int(0) UNSIGNED NULL DEFAULT 0 COMMENT '已经发送次数',
`push_param` text CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL COMMENT '推送参数',
`service_provider` varchar(40) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '服务方',
`create_at` bigint(0) NULL DEFAULT NULL COMMENT '创建时间',
`update_at` bigint(0) NULL DEFAULT NULL COMMENT '更新时间',
PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb3 COLLATE = utf8mb3_general_ci COMMENT = '需要告警后推送的条件' ROW_FORMAT = Dynamic;
-- ----------------------------
-- Records of data_alarm_push_condition
-- ----------------------------
-- ----------------------------
-- Table structure for data_alarm_push_log
-- ----------------------------
DROP TABLE IF EXISTS `data_alarm_push_log`;
CREATE TABLE `data_alarm_push_log` (
`id` bigint(0) NOT NULL,
`alarm_rule_id` bigint(0) NULL DEFAULT NULL,
`alarm_push_id` bigint(0) NULL DEFAULT NULL COMMENT '告警推送配置id',
`alarm_push_template_id` bigint(0) NULL DEFAULT NULL COMMENT '告警推送模板id',
`push_content` text CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL COMMENT '推送内容',
`push_type` varchar(20) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '推送类型systemsmsemail',
`status` tinyint(1) NULL DEFAULT NULL COMMENT '推送状态0失败1成功',
`indicator_id` bigint(0) NULL DEFAULT NULL COMMENT '监测指标id',
`monitor_point_id` bigint(0) NULL DEFAULT NULL COMMENT '测点id',
`device_id` bigint(0) NULL DEFAULT NULL,
`trigger_type` tinyint(1) NULL DEFAULT NULL COMMENT '触发器类型0设备离线1设备失联2监测要素3监测指标4特征值告警5设备离线比例',
`level` tinyint(0) UNSIGNED NULL DEFAULT 0 COMMENT '告警等级',
`push_time` datetime(0) NULL DEFAULT NULL COMMENT '告警推送时间',
`user_name` varchar(50) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '用户名称',
`real_name` varchar(50) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '用户名',
`phone_number` varchar(50) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '手机号',
`email` varchar(50) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '邮箱',
`tenant_id` bigint(0) NULL DEFAULT NULL COMMENT '租户id',
`application_id` bigint(0) NULL DEFAULT NULL COMMENT '应用id',
`user_id` bigint(0) NULL DEFAULT NULL,
`wait_number` int(0) NULL DEFAULT 0,
`create_at` bigint(0) NULL DEFAULT NULL COMMENT '推送时间',
`update_at` bigint(0) NULL DEFAULT NULL COMMENT '更新时间',
PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb3 COLLATE = utf8mb3_general_ci ROW_FORMAT = Dynamic;
-- ----------------------------
-- Records of data_alarm_push_log
-- ----------------------------
-- ----------------------------
-- Table structure for data_alarm_push_record
-- ----------------------------
DROP TABLE IF EXISTS `data_alarm_push_record`;
CREATE TABLE `data_alarm_push_record` (
`id` bigint(0) NOT NULL,
`push_content` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '推送内容',
`push_type` tinyint(1) NULL DEFAULT NULL COMMENT '推送类型',
`status` tinyint(1) NULL DEFAULT NULL COMMENT '推送状态',
`monitor_indicator` varchar(40) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '监测指标',
`monitor_point_id` bigint(0) NULL DEFAULT NULL COMMENT '测点id',
`level` tinyint(0) UNSIGNED NULL DEFAULT 0 COMMENT '告警等级',
`reservoir_id` bigint(0) NULL DEFAULT NULL COMMENT '水库id',
`alarm_type` tinyint(1) NULL DEFAULT NULL COMMENT '告警类型',
`push_condition_id` bigint(0) NULL DEFAULT NULL COMMENT '推送条件id',
`application_id` bigint(0) NULL DEFAULT NULL COMMENT '应用id',
`alarm_time` varchar(50) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '告警时间',
`alarm_key` varchar(50) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '告警key',
`push_rule` text CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL COMMENT '推送规则',
`alarm_value` varchar(50) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '告警value',
`contact_add` text CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL COMMENT '联系地址',
`alarm_rule` text CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL COMMENT '告警规则',
`create_at` bigint(0) NULL DEFAULT NULL COMMENT '推送时间',
`update_at` bigint(0) NULL DEFAULT NULL COMMENT '更新时间',
PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb3 COLLATE = utf8mb3_general_ci ROW_FORMAT = Dynamic;
-- ----------------------------
-- Records of data_alarm_push_record
-- ----------------------------
-- ----------------------------
-- Table structure for data_alarm_push_tag_rel
-- ----------------------------
DROP TABLE IF EXISTS `data_alarm_push_tag_rel`;
CREATE TABLE `data_alarm_push_tag_rel` (
`id` bigint(0) UNSIGNED NOT NULL COMMENT 'id',
`tenant_id` bigint(0) NULL DEFAULT NULL COMMENT '租户id',
`application_id` bigint(0) NULL DEFAULT NULL COMMENT '应用id',
`tag_key` varchar(20) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '标签key',
`tag_value` bigint(0) NULL DEFAULT NULL COMMENT '标签值',
`alarm_push_id` bigint(0) NULL DEFAULT NULL COMMENT '告警推送id',
`create_at` bigint(0) NULL DEFAULT NULL,
`update_at` bigint(0) NULL DEFAULT NULL,
PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb3 COLLATE = utf8mb3_general_ci COMMENT = '设备的模板以及监测指标之间标识的关系' ROW_FORMAT = Dynamic;
-- ----------------------------
-- Records of data_alarm_push_tag_rel
-- ----------------------------
-- ----------------------------
-- Table structure for data_alarm_push_template
-- ----------------------------
DROP TABLE IF EXISTS `data_alarm_push_template`;
CREATE TABLE `data_alarm_push_template` (
`id` bigint(0) NOT NULL COMMENT 'id',
`push_type` varchar(20) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL,
`push_type_name` varchar(20) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '告警通知方式,系统消息,邮件,短信',
`push_template_name` varchar(64) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL,
`push_template_content` text CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL,
`enable` tinyint(1) NULL DEFAULT NULL COMMENT '是否启用1启用 0关闭',
`remark` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL,
`application_id` bigint(0) NULL DEFAULT NULL COMMENT '应用id',
`tenant_id` bigint(0) NULL DEFAULT NULL,
`create_at` datetime(0) NULL DEFAULT NULL,
`update_at` datetime(0) NULL DEFAULT NULL,
PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb3 COLLATE = utf8mb3_general_ci COMMENT = '局部告警的设备数据表' ROW_FORMAT = Dynamic;
-- ----------------------------
-- Records of data_alarm_push_template
-- ----------------------------
-- ----------------------------
-- Table structure for data_alarm_push_template_tag_rel
-- ----------------------------
DROP TABLE IF EXISTS `data_alarm_push_template_tag_rel`;
CREATE TABLE `data_alarm_push_template_tag_rel` (
`id` bigint(0) UNSIGNED NOT NULL COMMENT 'id',
`tenant_id` bigint(0) NULL DEFAULT NULL COMMENT '租户id',
`application_id` bigint(0) NULL DEFAULT NULL COMMENT '应用id',
`tag_key` varchar(20) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '标签key',
`tag_value` bigint(0) NULL DEFAULT NULL COMMENT '标签值',
`alarm_push_template_id` bigint(0) NULL DEFAULT NULL COMMENT '告警推送模板id',
`create_at` bigint(0) NULL DEFAULT NULL,
`update_at` bigint(0) NULL DEFAULT NULL,
PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb3 COLLATE = utf8mb3_general_ci COMMENT = '设备的模板以及监测指标之间标识的关系' ROW_FORMAT = Dynamic;
-- ----------------------------
-- Records of data_alarm_push_template_tag_rel
-- ----------------------------
-- ----------------------------
-- Table structure for data_alarm_push_user
-- ----------------------------
DROP TABLE IF EXISTS `data_alarm_push_user`;
CREATE TABLE `data_alarm_push_user` (
`id` bigint(0) UNSIGNED NOT NULL COMMENT 'id',
`alarm_rule_id` bigint(0) NULL DEFAULT NULL,
`user_id` bigint(0) NULL DEFAULT NULL,
`user_name` varchar(50) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '用户名',
`real_name` varchar(50) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL,
`phone_number` varchar(50) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL,
`email` varchar(50) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL,
`alarm_push_id` bigint(0) NULL DEFAULT NULL COMMENT '告警推送id',
`create_at` bigint(0) NULL DEFAULT NULL,
`update_at` bigint(0) NULL DEFAULT NULL,
`tenant_id` bigint(0) NULL DEFAULT NULL,
`application_id` bigint(0) NULL DEFAULT NULL,
`user_center_super` tinyint(1) NULL DEFAULT NULL,
`application_super` tinyint(1) NULL DEFAULT NULL,
PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb3 COLLATE = utf8mb3_general_ci COMMENT = '设备的模板以及监测指标之间标识的关系' ROW_FORMAT = Dynamic;
-- ----------------------------
-- Records of data_alarm_push_user
-- ----------------------------
-- ----------------------------
-- Table structure for data_alarm_rule
-- ----------------------------
DROP TABLE IF EXISTS `data_alarm_rule`;
CREATE TABLE `data_alarm_rule` (
`id` bigint(0) UNSIGNED NOT NULL COMMENT 'id',
`unique_id` varchar(64) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL,
`application_id` bigint(0) NULL DEFAULT NULL COMMENT '应用id',
`template_id` bigint(0) NULL DEFAULT NULL COMMENT '模板id',
`device_id` bigint(0) NULL DEFAULT NULL COMMENT '设备id',
`tenant_id` bigint(0) NULL DEFAULT NULL COMMENT '租户id',
`product_id` bigint(0) NULL DEFAULT NULL,
`monitor_point_id` bigint(0) NULL DEFAULT NULL COMMENT '测点id',
`alarm_name` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '告警名称',
`global_flag` tinyint(0) UNSIGNED NULL DEFAULT 0 COMMENT '使用范围 默认0全局 1局部',
`enable` tinyint(1) NULL DEFAULT 1 COMMENT '是否启用1启用 0关闭',
`alarm_object` tinyint(1) NULL DEFAULT 1 COMMENT '告警对象0设备1测点。',
`line_type` tinyint(1) NULL DEFAULT 0 COMMENT '组合形式0按等级排序1and2or。',
`alarm_device_type` tinyint(1) NULL DEFAULT 0 COMMENT '告警设备类型0具体设备1同产品型号设备2同租户设备3同应用设备4同设备模板设备',
`trigger_type` tinyint(1) NULL DEFAULT 0 COMMENT '触发器类型0设备离线1设备失联2监测要素3监测指标4特征值告警5设备离线比例',
`user_name` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '用户名',
`whether_summary` bigint(0) NULL DEFAULT NULL COMMENT '是否汇总',
`alarm_msg` varchar(128) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL,
`create_at` datetime(0) NULL DEFAULT NULL,
`update_at` datetime(0) NULL DEFAULT NULL,
PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb3 COLLATE = utf8mb3_general_ci COMMENT = '用于设定监测的告警类型、推送规则以及相关规则' ROW_FORMAT = Dynamic;
-- ----------------------------
-- Records of data_alarm_rule
-- ----------------------------
-- ----------------------------
-- Table structure for data_alarm_rule_rel
-- ----------------------------
DROP TABLE IF EXISTS `data_alarm_rule_rel`;
CREATE TABLE `data_alarm_rule_rel` (
`id` bigint(0) NOT NULL COMMENT 'id',
`monitor_alarm_id` bigint(0) NULL DEFAULT NULL COMMENT '告警规则 json格式',
`alarm_type` tinyint(0) UNSIGNED NULL DEFAULT NULL COMMENT '告警类型 0设备离线、1设备失联、2监测要素、3监测指标',
`level` tinyint(1) NULL DEFAULT 1 COMMENT '告警等级',
`alarm_rule` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '具体告警配置',
`aviator` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '规则表达式',
`create_at` bigint(0) NULL DEFAULT NULL,
`update_at` bigint(0) NULL DEFAULT NULL,
PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb3 COLLATE = utf8mb3_general_ci ROW_FORMAT = Dynamic;
-- ----------------------------
-- Records of data_alarm_rule_rel
-- ----------------------------
-- ----------------------------
-- Table structure for data_alarm_sub_rule
-- ----------------------------
DROP TABLE IF EXISTS `data_alarm_sub_rule`;
CREATE TABLE `data_alarm_sub_rule` (
`id` bigint(0) NOT NULL COMMENT 'id',
`alarm_rule_id` bigint(0) NULL DEFAULT NULL COMMENT '告警规则 json格式',
`level` tinyint(1) NULL DEFAULT 1 COMMENT '告警等级',
`alarm_rule` text CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL COMMENT '具体告警配置',
`dead_zone` double NULL DEFAULT NULL COMMENT '死区',
`offline_duration` int(0) NULL DEFAULT NULL COMMENT '离线时长检测',
`duration` int(0) NULL DEFAULT NULL,
`offline_times` int(0) NULL DEFAULT NULL,
`offline_percent` int(0) NULL DEFAULT NULL,
`aviator` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '规则表达式',
`ignore_aviator` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '死区、步长设置,用于判断数据是否忽略告警',
`alarm_value_field` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL,
`create_at` bigint(0) NULL DEFAULT NULL,
`update_at` bigint(0) NULL DEFAULT NULL,
PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb3 COLLATE = utf8mb3_general_ci ROW_FORMAT = Dynamic;
-- ----------------------------
-- Records of data_alarm_sub_rule
-- ----------------------------
-- ----------------------------
-- Table structure for data_alarm_summary
-- ----------------------------
DROP TABLE IF EXISTS `data_alarm_summary`;
CREATE TABLE `data_alarm_summary` (
`id` bigint(0) UNSIGNED NOT NULL,
`ts` timestamp(0) NULL DEFAULT NULL,
`alarm_rule_id` bigint(0) NULL DEFAULT NULL,
`alarm_end_time` timestamp(0) NULL DEFAULT NULL,
`new_ts` timestamp(0) NULL DEFAULT NULL,
`release_time` timestamp(0) NULL DEFAULT NULL,
`alarm_key` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL,
`alarm_value` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL,
`alarm_name` varchar(64) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL,
`alarm_type` tinyint(0) NULL DEFAULT NULL,
`status` tinyint(0) NULL DEFAULT NULL,
`flow_status` tinyint(0) NULL DEFAULT 0 COMMENT '流转状态,1:已流转;0:未流转',
`level` tinyint(0) NULL DEFAULT NULL,
`device_id` bigint(0) NULL DEFAULT NULL,
`monitor_point_id` bigint(0) NULL DEFAULT NULL,
`monitor_point_name` varchar(64) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL,
`alarm_rule` varchar(64) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL,
`push_condition_id` bigint(0) NULL DEFAULT NULL,
`monitor_tags_name` varchar(64) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL,
`indicator_id` bigint(0) NULL DEFAULT NULL,
`application_id` bigint(0) NULL DEFAULT NULL,
`tenant_id` bigint(0) NULL DEFAULT NULL,
`last_one` int(0) NULL DEFAULT 1,
`create_at` bigint(0) NULL DEFAULT NULL,
`update_at` bigint(0) NULL DEFAULT NULL,
PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb3 COLLATE = utf8mb3_general_ci ROW_FORMAT = Dynamic;
-- ----------------------------
-- Records of data_alarm_summary
-- ----------------------------
-- ----------------------------
-- Table structure for data_device_alarm_rel
-- ----------------------------
DROP TABLE IF EXISTS `data_device_alarm_rel`;
CREATE TABLE `data_device_alarm_rel` (
`id` bigint(0) NOT NULL COMMENT 'id',
`device_id` bigint(0) NULL DEFAULT NULL COMMENT '设备id',
`device_name` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '设备名称',
`alarm_time` datetime(0) NULL DEFAULT NULL COMMENT '告警时间',
`status` tinyint(1) NULL DEFAULT NULL COMMENT '状态 0:未处理;1:已处理',
`alarm_key` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '告警键值',
`alarm_value` double NULL DEFAULT NULL COMMENT '告警数据',
`alarm_name` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '告警名称',
`handle_user` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '处理人',
`handle_time` datetime(0) NULL DEFAULT NULL COMMENT '处理时间',
`handle_remark` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '处理备注',
`application_ids` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '应用ids',
`tenant_id` bigint(0) NULL DEFAULT NULL COMMENT '租户id',
`create_at` bigint(0) NULL DEFAULT NULL,
`update_at` bigint(0) NULL DEFAULT NULL,
PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb3 COLLATE = utf8mb3_general_ci COMMENT = '预警广播设备告警数据表' ROW_FORMAT = Dynamic;
-- ----------------------------
-- Records of data_device_alarm_rel
-- ----------------------------
-- ----------------------------
-- Table structure for data_device_monitor_formula
-- ----------------------------
DROP TABLE IF EXISTS `data_device_monitor_formula`;
CREATE TABLE `data_device_monitor_formula` (
`id` bigint(0) NOT NULL COMMENT 'id',
`formula` text CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL COMMENT '计算公式',
`indicator` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '计算获取的指标 多个逗号隔开',
`application_id` bigint(0) NULL DEFAULT NULL COMMENT '应用id',
`monitor_point_id` bigint(0) NULL DEFAULT NULL COMMENT '测点id',
`parameter` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '计算参数 多个逗号隔开',
`tenant_id` bigint(0) NULL DEFAULT NULL COMMENT '租户id',
`type` tinyint(1) NULL DEFAULT NULL COMMENT '类型 0EL 1外部接口 ',
`formula_param` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '公式参数json',
`request_url` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '请求地址',
`init_json` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '初始值(json)',
`init_flag` tinyint(1) NULL DEFAULT NULL COMMENT '初值是否已经使用1使用 0未使用',
`create_at` bigint(0) NULL DEFAULT NULL,
`update_at` bigint(0) NULL DEFAULT NULL,
PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb3 COLLATE = utf8mb3_general_ci ROW_FORMAT = Dynamic;
-- ----------------------------
-- Records of data_device_monitor_formula
-- ----------------------------
-- ----------------------------
-- Table structure for data_device_monitor_rel
-- ----------------------------
DROP TABLE IF EXISTS `data_device_monitor_rel`;
CREATE TABLE `data_device_monitor_rel` (
`id` bigint(0) UNSIGNED NOT NULL COMMENT 'id',
`server_code` varchar(40) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '服务编码',
`tenant_id` bigint(0) NULL DEFAULT NULL COMMENT '租户id',
`application_id` bigint(0) NULL DEFAULT NULL COMMENT '应用id',
`device_id` bigint(0) NULL DEFAULT NULL COMMENT '设备id',
`template_id` bigint(0) NULL DEFAULT NULL COMMENT '模板id',
`template_field` varchar(20) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '模板字段',
`monitor_indicator` varchar(20) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '监测指标',
`monitor_field` varchar(20) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '监测指标对应的要素',
`monitor_point_id` bigint(0) NULL DEFAULT NULL COMMENT '测点id',
`monitor_point_name` varchar(40) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '测点名称',
`monitor_tags_name` varchar(40) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '水库名称 结构名称',
`base_point` tinyint(0) UNSIGNED NULL DEFAULT 0 COMMENT '是否为基站点0否1是 默认是,数据不做处理',
`base_id` bigint(0) NULL DEFAULT NULL COMMENT '基站点ID 不为基站点时才有',
`create_at` bigint(0) NULL DEFAULT NULL,
`update_at` bigint(0) NULL DEFAULT NULL,
PRIMARY KEY (`id`) USING BTREE,
UNIQUE INDEX `INDEX_UK_MONITORID_FIELD`(`monitor_field`, `monitor_point_id`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb3 COLLATE = utf8mb3_general_ci COMMENT = '设备的模板以及监测指标之间标识的关系' ROW_FORMAT = Dynamic;
-- ----------------------------
-- Records of data_device_monitor_rel
-- ----------------------------
-- ----------------------------
-- Table structure for data_indicator_constant
-- ----------------------------
DROP TABLE IF EXISTS `data_indicator_constant`;
CREATE TABLE `data_indicator_constant` (
`id` bigint(0) NOT NULL COMMENT 'id',
`indicator_id` bigint(0) NULL DEFAULT NULL,
`server_code` varchar(64) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL,
`constant_key` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '监测指标常量key',
`create_at` bigint(0) NULL DEFAULT NULL,
`update_at` bigint(0) NULL DEFAULT NULL,
PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb3 COLLATE = utf8mb3_general_ci ROW_FORMAT = Dynamic;
-- ----------------------------
-- Records of data_indicator_constant
-- ----------------------------
-- ----------------------------
-- Table structure for data_indicator_output_formula
-- ----------------------------
DROP TABLE IF EXISTS `data_indicator_output_formula`;
CREATE TABLE `data_indicator_output_formula` (
`id` bigint(0) NOT NULL COMMENT 'id',
`indicator_id` bigint(0) NULL DEFAULT NULL,
`server_code` varchar(64) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL,
`formula_type` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '公式类型raw原始值,aviator动态公式,fixed固定公式',
`method_annotation` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '方法标注hourly_sum小时累积,daily_sum日累积,monthly_sum月累积,annually_sum年累积,hourly_average小时平均,daily_average日平均,monthly_average月平均,annually_average年平均',
`formula_content` text CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL COMMENT '公式内容',
`output_indicator` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '输出指标要素',
`field_group` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '字段组,多个固定方法需要存储于同一张表时使用',
`base_point_logic` tinyint(1) NULL DEFAULT 0 COMMENT '1有基站点逻辑 0无基站点逻辑',
`element_precision` int(0) NULL DEFAULT 4 COMMENT '精度',
`remark` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '字段备注',
`create_at` bigint(0) NULL DEFAULT NULL,
`update_at` bigint(0) NULL DEFAULT NULL,
PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb3 COLLATE = utf8mb3_general_ci ROW_FORMAT = Dynamic;
-- ----------------------------
-- Records of data_indicator_output_formula
-- ----------------------------
-- ----------------------------
-- Table structure for data_indicator_output_formula_rel
-- ----------------------------
DROP TABLE IF EXISTS `data_indicator_output_formula_rel`;
CREATE TABLE `data_indicator_output_formula_rel` (
`id` bigint(0) NOT NULL COMMENT 'id',
`sever_formula_id` bigint(0) NULL DEFAULT NULL,
`tenant_id` bigint(0) NULL DEFAULT NULL COMMENT '租户id',
`application_id` bigint(0) NULL DEFAULT NULL COMMENT '应用id',
`create_at` bigint(0) NULL DEFAULT NULL,
`update_at` bigint(0) NULL DEFAULT NULL,
PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb3 COLLATE = utf8mb3_general_ci ROW_FORMAT = Dynamic;
-- ----------------------------
-- Records of data_indicator_output_formula_rel
-- ----------------------------
-- ----------------------------
-- Table structure for data_indicator_point
-- ----------------------------
DROP TABLE IF EXISTS `data_indicator_point`;
CREATE TABLE `data_indicator_point` (
`id` bigint(0) UNSIGNED NOT NULL COMMENT 'id',
`server_code` varchar(40) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '服务编码',
`tenant_id` bigint(0) NULL DEFAULT NULL COMMENT '租户id',
`application_id` bigint(0) NULL DEFAULT NULL COMMENT '应用id',
`indicator_id` bigint(0) NULL DEFAULT NULL COMMENT '监测指标id',
`device_id` bigint(0) NULL DEFAULT NULL COMMENT '设备id',
`template_id` bigint(0) NULL DEFAULT NULL COMMENT '模板id',
`monitor_point_id` bigint(0) NULL DEFAULT NULL COMMENT '测点id',
`monitor_point_name` varchar(40) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '测点名称',
`base_point` tinyint(0) UNSIGNED NULL DEFAULT 0 COMMENT '是否为基站点0否1是 默认是,数据不做处理',
`base_id` bigint(0) NULL DEFAULT NULL COMMENT '基站点ID 不为基站点时才有',
`monitor_tags_name` varchar(40) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '水库名称 结构名称',
`init_json` text CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL COMMENT '初始化参数,json格式',
`create_at` bigint(0) NULL DEFAULT NULL,
`update_at` bigint(0) NULL DEFAULT NULL,
PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb3 COLLATE = utf8mb3_general_ci COMMENT = '设备的模板以及监测指标之间标识的关系' ROW_FORMAT = Dynamic;
-- ----------------------------
-- Records of data_indicator_point
-- ----------------------------
-- ----------------------------
-- Table structure for data_indicator_point_device_rel
-- ----------------------------
DROP TABLE IF EXISTS `data_indicator_point_device_rel`;
CREATE TABLE `data_indicator_point_device_rel` (
`id` bigint(0) UNSIGNED NOT NULL COMMENT 'id',
`tenant_id` bigint(0) NULL DEFAULT NULL COMMENT '租户id',
`application_id` bigint(0) NULL DEFAULT NULL COMMENT '应用id',
`template_field` varchar(20) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '模板字段',
`monitor_field` varchar(20) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '监测指标对应的要素',
`monitor_point_id` bigint(0) NULL DEFAULT NULL COMMENT '测点id',
`create_at` bigint(0) NULL DEFAULT NULL,
`update_at` bigint(0) NULL DEFAULT NULL,
PRIMARY KEY (`id`) USING BTREE,
UNIQUE INDEX `INDEX_UK_MONITORID_FIELD`(`monitor_field`, `monitor_point_id`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb3 COLLATE = utf8mb3_general_ci COMMENT = '设备的模板以及监测指标之间标识的关系' ROW_FORMAT = Dynamic;
-- ----------------------------
-- Records of data_indicator_point_device_rel
-- ----------------------------
-- ----------------------------
-- Table structure for data_indicator_point_tag_rel
-- ----------------------------
DROP TABLE IF EXISTS `data_indicator_point_tag_rel`;
CREATE TABLE `data_indicator_point_tag_rel` (
`id` bigint(0) UNSIGNED NOT NULL COMMENT 'id',
`tenant_id` bigint(0) NULL DEFAULT NULL COMMENT '租户id',
`application_id` bigint(0) NULL DEFAULT NULL COMMENT '应用id',
`tag_key` varchar(20) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '标签key',
`tag_value` varchar(20) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '标签值',
`monitor_point_id` bigint(0) NULL DEFAULT NULL COMMENT '测点id',
`create_at` bigint(0) NULL DEFAULT NULL,
`update_at` bigint(0) NULL DEFAULT NULL,
PRIMARY KEY (`id`) USING BTREE,
UNIQUE INDEX `INDEX_UK_MONITORID_FIELD`(`tag_value`, `monitor_point_id`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb3 COLLATE = utf8mb3_general_ci COMMENT = '设备的模板以及监测指标之间标识的关系' ROW_FORMAT = Dynamic;
-- ----------------------------
-- Records of data_indicator_point_tag_rel
-- ----------------------------
-- ----------------------------
-- Table structure for data_monitor_alarm_rule
-- ----------------------------
DROP TABLE IF EXISTS `data_monitor_alarm_rule`;
CREATE TABLE `data_monitor_alarm_rule` (
`id` bigint(0) UNSIGNED NOT NULL COMMENT 'id',
`application_id` bigint(0) NULL DEFAULT NULL COMMENT '应用id',
`template_id` bigint(0) NULL DEFAULT NULL COMMENT '模板id',
`device_id` bigint(0) NULL DEFAULT NULL COMMENT '设备id',
`tenant_id` bigint(0) NULL DEFAULT NULL COMMENT '租户id',
`monitor_point_id` bigint(0) NULL DEFAULT NULL COMMENT '测点id',
`alarm_name` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '告警名称',
`global_flag` tinyint(0) UNSIGNED NULL DEFAULT 0 COMMENT '使用范围 默认0全局 1局部',
`enable` tinyint(1) NULL DEFAULT 1 COMMENT '是否启用1启用 0关闭',
`push_rule_id` bigint(0) NULL DEFAULT NULL COMMENT '推送规则id',
`create_at` bigint(0) NULL DEFAULT NULL,
`update_at` bigint(0) NULL DEFAULT NULL,
PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb3 COLLATE = utf8mb3_general_ci COMMENT = '用于设定监测的告警类型、推送规则以及相关规则' ROW_FORMAT = Dynamic;
-- ----------------------------
-- Records of data_monitor_alarm_rule
-- ----------------------------
-- ----------------------------
-- Table structure for data_push_file_message
-- ----------------------------
DROP TABLE IF EXISTS `data_push_file_message`;
CREATE TABLE `data_push_file_message` (
`id` bigint(0) NOT NULL,
`even_json` text CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL COMMENT 'json',
`file_name` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '文件名称',
`deal_flag` tinyint(0) UNSIGNED NULL DEFAULT 0 COMMENT '1已处理0未处理',
`create_at` bigint(0) NULL DEFAULT NULL COMMENT '创建时间',
`update_at` bigint(0) NULL DEFAULT NULL COMMENT '更新时间',
PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = latin1 COLLATE = latin1_swedish_ci ROW_FORMAT = Dynamic;
-- ----------------------------
-- Records of data_push_file_message
-- ----------------------------
SET FOREIGN_KEY_CHECKS = 1;

View File

@ -0,0 +1,10 @@
-- 创建数据库
CREATE DATABASE IF NOT EXISTS data_center;
-- 使用数据库data_center
use data_center;
-- 创建设备状态表
CREATE STABLE IF NOT EXISTS device_status (`ts` TIMESTAMP,`online` TINYINT,`duration` INT) TAGS (`info` JSON);
-- 创建无效数据存储
CREATE STABLE IF NOT EXISTS device_invalid (`ts` TIMESTAMP,`keyword` NCHAR(20),`description` NCHAR(20)) TAGS (`device_id` NCHAR(20));
-- 创建告警表
CREATE STABLE IF NOT EXISTS alarm_log (`ts` TIMESTAMP, `alarm_value` DOUBLE, `level` INT, `status` INT, `whether_push` INT, `alarm_msg` NCHAR(64), `alarm_device_type` INT, `trigger_type` INT, `trigger_elements` NCHAR(128)) TAGS (`tenant_id` BIGINT, `application_id` BIGINT, `indicator_id` BIGINT, `monitor_point_id` BIGINT, `alarm_key` NCHAR(20), `alarm_type` INT, `alarm_rule_id` BIGINT, `device_id` BIGINT, `alarm_object` INT, `application_ids` NCHAR(128));

View File

@ -0,0 +1,10 @@
-- 创建数据库
CREATE DATABASE IF NOT EXISTS data_center;
-- 使用数据库data_center
use data_center;
-- 创建设备状态表
CREATE STABLE IF NOT EXISTS device_status (`ts` TIMESTAMP,`online` TINYINT,`duration` INT) TAGS (`info` JSON);
-- 创建无效数据存储
CREATE STABLE IF NOT EXISTS device_invalid (`ts` TIMESTAMP,`keyword` NCHAR(20),`description` NCHAR(20)) TAGS (`device_id` NCHAR(20));
-- 创建告警表
CREATE STABLE IF NOT EXISTS alarm_log (`ts` TIMESTAMP, `alarm_value` DOUBLE, `level` INT, `status` INT, `whether_push` INT, `alarm_msg` NCHAR(64), `alarm_device_type` INT, `trigger_type` INT, `trigger_elements` NCHAR(128)) TAGS (`tenant_id` BIGINT, `application_id` BIGINT, `indicator_id` BIGINT, `monitor_point_id` BIGINT, `alarm_key` NCHAR(20), `alarm_type` INT, `alarm_rule_id` BIGINT, `device_id` BIGINT, `alarm_object` INT, `application_ids` NCHAR(128));

3
data/README.md Normal file
View File

@ -0,0 +1,3 @@
# iot-data-center
iot-data-center

View File

@ -0,0 +1,26 @@
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<parent>
<artifactId>iot-data-center</artifactId>
<groupId>com.fourfaith.iot</groupId>
<version>2.7.3-SNAPSHOT</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<artifactId>data-center-dubbo-api</artifactId>
<version>2.7.3-SNAPSHOT</version>
<dependencies>
<dependency>
<groupId>com.fourfaith.framework</groupId>
<artifactId>fourfaith-common</artifactId>
</dependency>
</dependencies>
<properties>
<maven.compiler.source>8</maven.compiler.source>
<maven.compiler.target>8</maven.compiler.target>
</properties>
</project>

View File

@ -0,0 +1,21 @@
package com.fourfaith.iot.datacenter.dubbo.pojo.bean;
import lombok.Data;
import java.io.Serializable;
/**
* @Name DeviceLabelBean
* @Description 设备标签实体
* @Author shiyunan
* @Create 2022/6/15 11:51
*/
@Data
public class DeviceLabelBean implements Serializable {
private static final long serialVersionUID = -5976326296908325791L;
private String key;
private Object value;
}

View File

@ -0,0 +1,28 @@
package com.fourfaith.iot.datacenter.dubbo.pojo.bean;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.io.Serializable;
/**
* @Name SchemaBean
* @Description demo
* @Author zhangrw
* @Create 2022/8/8
*/
@Data
@AllArgsConstructor
@NoArgsConstructor
public class SchemaBean implements Serializable {
private static final long serialVersionUID = 6890939295529250718L;
private String identifier;
private String dataType;
private Integer dataLength;
}

View File

@ -0,0 +1,22 @@
package com.fourfaith.iot.datacenter.dubbo.pojo.dto;
import com.fourfaith.common.annotation.Notes;
import lombok.Data;
import java.io.Serializable;
/**
* @author shiyunan
*/
@Data
@Notes("文件导出响应对象")
public class FileExportDto implements Serializable {
private static final long serialVersionUID = -657702843700381522L;
@Notes("文件路径")
private String fileUrl;
@Notes("文件大小")
private Long fileSize;
}

View File

@ -0,0 +1,146 @@
package com.fourfaith.iot.datacenter.dubbo.pojo.dto;
import java.io.Serializable;
import java.util.Collection;
import java.util.Collections;
import java.util.List;
/**
* @Name BasePageParam
* @Description 分页响应参数
* @Author shiyunan
* @Create 2022/5/17 11:31
*/
public class PageDto<T> implements Serializable {
private static final long serialVersionUID = -5165206006774568675L;
public static final int DEFAULT_NAVIGATE_PAGES = 8;
public static final PageDto EMPTY = new PageDto(Collections.emptyList());
/**
* 当前页
*/
private int pageNum;
/**
* 每页的数量
*/
private int pageSize;
/**
* 当前页的数量
*/
private int size;
/**
* 总记录数
*/
private long total;
/**
* 结果集
*/
private List<T> list;
/**
* 信息扩展字段
*/
private String returnMsg;
public PageDto() {
}
/**
* 包装Page对象
*
* @param list page结果
*/
public PageDto(List<T> list) {
if (list instanceof Collection) {
this.pageNum = 1;
this.pageSize = list.size();
this.size = list.size();
}
}
public long getTotal() {
return total;
}
public void setTotal(long total) {
this.total = total;
}
public List<T> getList() {
return list;
}
public void setList(List<T> list) {
this.list = list;
}
public static <T> PageDto<T> of(List<T> list) {
return new PageDto<T>(list);
}
/**
* 返回一个空的 Pageinfo 对象
*
* @return
*/
public static <T> PageDto<T> emptyPageInfo() {
return EMPTY;
}
/**
* 是否包含内容
*/
public boolean hasContent() {
return this.size > 0;
}
public int getPageNum() {
return pageNum;
}
public void setPageNum(int pageNum) {
this.pageNum = pageNum;
}
public int getPageSize() {
return pageSize;
}
public void setPageSize(int pageSize) {
this.pageSize = pageSize;
}
public int getSize() {
return size;
}
public void setSize(int size) {
this.size = size;
}
public String getReturnMsg() {
return returnMsg;
}
public void setReturnMsg(String returnMsg) {
this.returnMsg = returnMsg;
}
@Override
public String toString() {
return "PageDto{" +
"pageNum=" + pageNum +
", pageSize=" + pageSize +
", size=" + size +
", total=" + total +
", list=" + list +
'}';
}
}

View File

@ -0,0 +1,31 @@
package com.fourfaith.iot.datacenter.dubbo.pojo.entity;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import java.io.Serializable;
import java.sql.Timestamp;
/**
* @Name DeviceStatusEntity
* @Description 设备状态实体
* @Author shiyunan
* @Create 2022/6/15 11:51
*/
@Data
public class DeviceStatusEntity implements Serializable {
private static final long serialVersionUID = -657702843700381522L;
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss.SSS", timezone = "GMT+8")
private Timestamp ts;
private String deviceId;
private Integer online;
/**
* 持续时间单位
*/
private Integer duration;
}

View File

@ -0,0 +1,37 @@
package com.fourfaith.iot.datacenter.dubbo.pojo.param;
import lombok.Data;
import java.io.Serializable;
/**
* @Name BasePageParam
* @Description 分页查询基类
* @Author shiyunan
* @Create 2022/5/17 11:31
*/
@Data
public class BasePageParam implements Serializable {
private static final long serialVersionUID = 3358163426265854093L;
protected Integer pageNum;
protected Integer pageSize;
protected Integer offset;
public void initPageParam() {
if (this.pageNum == null) {
this.pageNum = 1;
}
if (this.pageSize == null) {
this.pageSize = 20;
}
initOffset();
}
public void initOffset() {
this.offset = (this.pageNum - 1) * this.pageSize;
}
}

View File

@ -0,0 +1,37 @@
package com.fourfaith.iot.datacenter.dubbo.pojo.param;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fourfaith.common.annotation.Notes;
import com.fourfaith.iot.push.dubbo.pojo.param.BasePageParam;
import lombok.Data;
import java.io.Serializable;
import java.util.Date;
import java.util.List;
/**
* @ClassName DevFileInfoPageParam
* @Description 文件分页参数
* @Author lingx
* @Create 2023-10-11 16:28
*/
@Data
public class DevFileInfoPageParam extends BasePageParam implements Serializable {
@Notes("设备id")
private List<Long> deviceIdList;
@Notes("设备名称/设备编号")
private String deviceNameOrSn;
@Notes("租户id")
private Long tenantId;
@JsonFormat(shape = JsonFormat.Shape.STRING, pattern="yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
@Notes("开始时间")
private Date startTime;
@JsonFormat(shape = JsonFormat.Shape.STRING, pattern="yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
@Notes("结束时间")
private Date endTime;
}

View File

@ -0,0 +1,29 @@
package com.fourfaith.iot.datacenter.dubbo.pojo.param;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.io.Serializable;
import java.util.List;
@Data
@AllArgsConstructor
@NoArgsConstructor
public class DeviceChangeRelationshipParam implements Serializable {
private static final long serialVersionUID = -188532021267952596L;
private String deviceId;
private List<String> functionCodes;
private String tenantId;
private String templateId;
private String productId;
private List<String> appIds;
}

View File

@ -0,0 +1,59 @@
package com.fourfaith.iot.datacenter.dubbo.pojo.param;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import java.io.Serializable;
import java.sql.Timestamp;
import java.util.Map;
/**
* @Name DeviceDataParam
* @Description 设备数据入参
* @Author shiyunan
* @Create 2022/6/15 11:51
*/
@Data
public class DeviceDataParam implements Serializable {
private static final long serialVersionUID = -657702843700381522L;
private String deviceId;
private String templateId;
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss.SSS", timezone = "GMT+8")
private Timestamp ts;
private Map<String, Object> props;
private Map<String, Object> illegal;
private String deviceName;
/**
* 功能码
*/
private Boolean primary;
/**
* 功能码
*/
private String functionCode;
/**
* 数据来源0:GPRS上报1:页面导入2:北斗上报
*/
private Integer origin;
/**
* 租户ID
*/
private Long tenantId;
/**
* 应用ID
*/
private String applicationIds;
}

View File

@ -0,0 +1,33 @@
package com.fourfaith.iot.datacenter.dubbo.pojo.param;
import lombok.Data;
import java.io.Serializable;
import java.sql.Timestamp;
import java.util.List;
/**
* @Name DeviceDurationOfflineCountParam
* @Description 设备离线数量统计入参
* @Author shiyunan
* @Create 2023/6/15 11:51
*/
@Data
public class DeviceDurationOfflineCountParam implements Serializable {
private static final long serialVersionUID = -657702843700381522L;
private List<Long> deviceIdList;
private Integer online;
private Long tenantId;
private Long applicationId;
private Long productId;
private Long templateId;
private Timestamp startTs;
}

View File

@ -0,0 +1,57 @@
package com.fourfaith.iot.datacenter.dubbo.pojo.param;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fourfaith.common.annotation.Notes;
import com.fourfaith.iot.datacenter.dubbo.pojo.bean.DeviceLabelBean;
import lombok.Data;
import java.io.Serializable;
import java.sql.Timestamp;
import java.util.List;
import java.util.Map;
/**
* @author shiyunan
*/
@Data
@Notes("测点数据导出入参")
@Deprecated
public class DeviceExportParam implements Serializable {
private static final long serialVersionUID = -657702843700381522L;
@Notes("导出文件名")
private String fileName;
@Notes("设备id")
private String deviceId;
@Notes("设备id列表")
private List<String> deviceIdList;
@Notes("查询字段列表")
private List<String> selectFieldList;
@Notes("模板id")
private String templateId;
@Notes("租户id")
private String tenantId;
@Notes("应用id")
private String applicationId;
@Notes("开始时间")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss.SSS", timezone = "GMT+8")
private Timestamp startTs;
@Notes("结束时间")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss.SSS", timezone = "GMT+8")
private Timestamp endTs;
@Notes("设备标签")
private DeviceLabelBean deviceLabel;
@Notes("要素键值对,如果需要将英文要素替换成中文需要这个参数")
private Map<String,String> elementNameMap;
}

View File

@ -0,0 +1,56 @@
package com.fourfaith.iot.datacenter.dubbo.pojo.param;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fourfaith.common.annotation.Notes;
import com.fourfaith.iot.datacenter.dubbo.pojo.bean.DeviceLabelBean;
import lombok.Data;
import java.io.Serializable;
import java.sql.Timestamp;
import java.util.List;
import java.util.Map;
/**
* @author shiyunan
*/
@Data
@Notes("测点数据导出入参")
public class DeviceFileExportParam implements Serializable {
private static final long serialVersionUID = -657702843700381522L;
@Notes("导出文件名")
private String fileName;
@Notes("设备id")
private String deviceId;
@Notes("设备id列表")
private List<String> deviceIdList;
@Notes("查询字段列表")
private List<String> selectFieldList;
@Notes("模板id")
private String templateId;
@Notes("租户id")
private String tenantId;
@Notes("应用id")
private String applicationId;
@Notes("开始时间")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss.SSS", timezone = "GMT+8")
private Timestamp startTs;
@Notes("结束时间")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss.SSS", timezone = "GMT+8")
private Timestamp endTs;
@Notes("设备标签")
private DeviceLabelBean deviceLabel;
@Notes("要素键值对,如果需要将英文要素替换成中文需要这个参数")
private Map<String,String> elementNameMap;
}

View File

@ -0,0 +1,27 @@
package com.fourfaith.iot.datacenter.dubbo.pojo.param;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import java.io.Serializable;
import java.sql.Timestamp;
/**
* @Name DeviceInvalidDataParam
* @Description 设备无效数据入参
* @Author shiyunan
* @Create 2022/6/15 11:51
*/
@Data
public class DeviceInvalidDataParam implements Serializable {
private static final long serialVersionUID = -657702843700381522L;
private String deviceId;
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss.SSS", timezone = "GMT+8")
private Timestamp startTs;
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss.SSS", timezone = "GMT+8")
private Timestamp endTs;
}

View File

@ -0,0 +1,24 @@
package com.fourfaith.iot.datacenter.dubbo.pojo.param;
import com.fourfaith.iot.datacenter.dubbo.pojo.bean.DeviceLabelBean;
import lombok.Data;
import java.io.Serializable;
/**
* @Name DeviceOnlineCountParam
* @Description 设备在线数量统计入参
* @Author shiyunan
* @Create 2022/6/15 11:51
*/
@Data
public class DeviceOnlineCountParam implements Serializable {
private static final long serialVersionUID = -657702843700381522L;
private String tenantId;
private String applicationId;
private DeviceLabelBean deviceLabel;
}

View File

@ -0,0 +1,47 @@
package com.fourfaith.iot.datacenter.dubbo.pojo.param;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fourfaith.iot.datacenter.dubbo.pojo.bean.DeviceLabelBean;
import lombok.Data;
import java.io.Serializable;
import java.sql.Timestamp;
import java.util.List;
@Data
public class DeviceParam extends BasePageParam implements Serializable {
private static final long serialVersionUID = -657702843700381522L;
private String deviceId;
private List<String> deviceIdList;
private List<String> selectFieldList;
private String selectField;
private String templateId;
private String functionCode;
private String tenantId;
private String applicationId;
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss.SSS", timezone = "GMT+8")
private Timestamp startTs;
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss.SSS", timezone = "GMT+8")
private Timestamp endTs;
private DeviceLabelBean deviceLabel;
private String sort;
private String supplementSql;
private Boolean notNull;
private String tableName;
}

View File

@ -0,0 +1,40 @@
package com.fourfaith.iot.datacenter.dubbo.pojo.param;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.io.Serializable;
import java.util.Date;
/**
* @Name DeviceStatusParam
* @Description 设备状态查询入参
* @Author shiyunan
* @Create 2022/6/15 11:51
*/
@Data
@AllArgsConstructor
@NoArgsConstructor
public class DeviceStatusParam implements Serializable {
private static final long serialVersionUID = -657702843700381522L;
private String deviceId;
private Integer online;
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss.SSS", timezone = "GMT+8")
private Date ts;
/**
* 持续时间单位
*/
private Integer duration;
/**
* 按区间查最后一条设备状态
*/
private Date endTs;
}

View File

@ -0,0 +1,19 @@
package com.fourfaith.iot.datacenter.dubbo.pojo.param;
import lombok.Data;
import java.io.Serializable;
/**
* @Name DeviceTagsParam
* @Description 设备标签查询入参
* @Author shiyunan
* @Create 2022/6/15 11:51
*/
@Data
public class DeviceTagsParam implements Serializable {
private static final long serialVersionUID = 483604080306916457L;
private String deviceId;
}

View File

@ -0,0 +1,26 @@
package com.fourfaith.iot.datacenter.dubbo.pojo.param;
import lombok.Data;
import java.io.Serializable;
import java.util.List;
/**
* @Name DeviceUpdateTagsParam
* @Description 设备标签更新入参
* @Author shiyunan
* @Create 2022/6/15 11:51
*/
@Data
public class DeviceUpdateTagsParam implements Serializable {
private static final long serialVersionUID = 483604080306916457L;
private String deviceId;
private String templateId;
private String info;
private List<String> functionCodes;
}

View File

@ -0,0 +1,36 @@
package com.fourfaith.iot.datacenter.dubbo.pojo.param;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fourfaith.common.annotation.Notes;
import lombok.Data;
import java.io.Serializable;
import java.sql.Timestamp;
import java.util.List;
/**
* @Name DeviceWaterCountParam
* @Description JC100设备用水量统计参数
* @Author lingx
* @Create 2023-09-06 09:30
*/
@Data
public class DeviceWaterCountParam implements Serializable {
private static final long serialVersionUID = -4601798563426906670L;
private List<String> deviceIdList;
@Notes("统计类型1-日 2-月 3-年")
private Integer countType;
private String tenantId;
private String applicationId;
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss.SSS", timezone = "GMT+8")
private Timestamp startTs;
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss.SSS", timezone = "GMT+8")
private Timestamp endTs;
}

View File

@ -0,0 +1,27 @@
package com.fourfaith.iot.datacenter.dubbo.pojo.param;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import java.io.Serializable;
import java.util.Date;
/**
* @Name OnlineRateParam
* @Description 设备在线率查询入参
* @Author shiyunan
* @Create 2022/6/15 11:51
*/
@Data
public class OnlineRateParam implements Serializable {
private static final long serialVersionUID = -657702843700381522L;
private String deviceId;
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss.SSS", timezone = "GMT+8")
private Date startTime;
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss.SSS", timezone = "GMT+8")
private Date endTime;
}

View File

@ -0,0 +1,27 @@
package com.fourfaith.iot.datacenter.dubbo.pojo.param;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import java.io.Serializable;
import java.util.Date;
/**
* @Name OnlineRateParam
* @Description 设备在线率查询入参
* @Author shiyunan
* @Create 2022/6/15 11:51
*/
@Data
public class PeriodStatusParam implements Serializable {
private static final long serialVersionUID = -657702843700381522L;
private String deviceId;
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss.SSS", timezone = "GMT+8")
private Date startTime;
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss.SSS", timezone = "GMT+8")
private Date endTime;
}

View File

@ -0,0 +1,36 @@
package com.fourfaith.iot.datacenter.dubbo.pojo.param;
import com.fourfaith.iot.datacenter.dubbo.pojo.bean.SchemaBean;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.io.Serializable;
import java.util.List;
import java.util.Map;
/**
* @Name TemplateChangeNoticeParam
* @Description demo
* @Author zhangrw
* @Create 2022/8/8
*/
@Data
@AllArgsConstructor
@NoArgsConstructor
public class TemplateChangeNoticeParam implements Serializable {
private static final long serialVersionUID = -649547675990080953L;
/**
* 设备模板ID
*/
private String templateId;
/**
* 要素字段集合key功能码 value该功能码下要素
*/
private Map<String, List<SchemaBean>> schemaMap;
}

View File

@ -0,0 +1,32 @@
package com.fourfaith.iot.datacenter.dubbo.pojo.vo;
import lombok.Getter;
import lombok.Setter;
import lombok.experimental.Accessors;
import java.io.Serializable;
import java.sql.Timestamp;
/**
* @ClassName DevRealtimeDataVO
* @Description
* @Author lingx
* @Create 2023-09-12 11:10
*/
@Getter
@Setter
@Accessors(chain = true)
public class DevDataWithTimeVO implements Serializable {
private static final long serialVersionUID = 1L;
private String identifier;
private Object value;
private Timestamp ts;
}

View File

@ -0,0 +1,38 @@
package com.fourfaith.iot.datacenter.dubbo.pojo.vo;
import lombok.Data;
import java.io.Serializable;
import java.util.Date;
/**
* @ClassName DevFileInfoService
* @Description 设备上传文件信息表
* @Author lingx
* @Create 2023-10-11 15:34
*/
@Data
public class DevFileInfoVo implements Serializable {
private static final long serialVersionUID = 1L;
private Long id;
private Long tenantId;
private String deviceId;
private String deviceSn;
private String deviceName;
private String filePath;
private String fileName;
private Long fileSize;
private Date createTime;
private Date updateTime;
}

View File

@ -0,0 +1,21 @@
package com.fourfaith.iot.datacenter.dubbo.pojo.vo;
import lombok.Data;
import java.io.Serializable;
/**
* @Name DeviceOnlineCountVo
* @Description 设备在线统计视图
* @Author shiyunan
* @Create 2022/6/15 11:51
*/
@Data
public class DeviceOnlineCountVo implements Serializable {
private static final long serialVersionUID = -4601798563426906670L;
private Integer deviceCount;
private Integer onlineCount;
}

View File

@ -0,0 +1,27 @@
package com.fourfaith.iot.datacenter.dubbo.pojo.vo;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import java.io.Serializable;
import java.math.BigDecimal;
import java.sql.Timestamp;
/**
* @Name DeviceWaterCountVo
* @Description JC100设备用水量统计视图
* @Author lingx
* @Create 2023-09-06 09:30
*/
@Data
public class DeviceWaterCountVo implements Serializable {
private static final long serialVersionUID = -4601798563426906670L;
private String deviceId;
private BigDecimal waterCount;
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss.SSS", timezone = "GMT+8")
private Timestamp ts;
}

View File

@ -0,0 +1,182 @@
package com.fourfaith.iot.datacenter.dubbo.service;
import com.fourfaith.common.annotation.Notes;
import com.fourfaith.common.pojo.ResultDto;
import com.fourfaith.iot.datacenter.dubbo.pojo.dto.PageDto;
import com.fourfaith.iot.datacenter.dubbo.pojo.entity.DeviceStatusEntity;
import com.fourfaith.iot.datacenter.dubbo.pojo.param.*;
import com.fourfaith.iot.datacenter.dubbo.pojo.vo.DevFileInfoVo;
import com.fourfaith.iot.datacenter.dubbo.pojo.vo.DevDataWithTimeVO;
import com.fourfaith.iot.datacenter.dubbo.pojo.vo.DeviceOnlineCountVo;
import com.fourfaith.iot.datacenter.dubbo.pojo.vo.DeviceWaterCountVo;
import java.util.List;
import java.util.Map;
/**
* @Name DeviceDataDubboService
* @Description 设备数据查询dubbo接口
* @Author shiyunan
* @Create 2022/6/22
*/
@Notes("设备数据查询dubbo接口")
public interface DeviceDataDubboService {
/**
* 查询设备状态
*
* @param deviceStatusParam 入参
* @return 设备状态
*/
@Notes("查询设备状态")
ResultDto<DeviceStatusEntity> lastStatus(DeviceStatusParam deviceStatusParam);
/**
* 按天查询设备在线率
*
* @param onlineRateParam 入参
* @return 在线率
*/
@Notes("按天查询设备在线率")
ResultDto<Integer> onlineRateByDay(OnlineRateParam onlineRateParam);
/**
* 更新设备标签
*
* @param deviceUpdateTagsParam 入参
* @return 在线率
*/
@Notes("更新设备标签")
ResultDto<Boolean> updateTags(DeviceUpdateTagsParam deviceUpdateTagsParam);
/**
* 查询设备标签
*
* @param deviceTagsParam 入参
* @return 在线率
*/
@Notes("查询设备标签")
ResultDto<Boolean> selectTags(DeviceTagsParam deviceTagsParam);
/**
* 统计设备在线数量
*
* @param deviceOnlineCountParam 入参
* @return 设备在线数量
*/
@Notes("统计设备在线数量")
ResultDto<DeviceOnlineCountVo> onlineCount(DeviceOnlineCountParam deviceOnlineCountParam);
/**
* 查询最后设备数据实时数据
*
* @param deviceParam 入参
* @return 最后设备数据
*/
@Notes("查询最后设备数据(实时数据)")
ResultDto<List<Map<String, Object>>> selectLastData(DeviceParam deviceParam);
@Notes("查询设备最新数据(包括所有功能码)")
ResultDto<Map<String, DevDataWithTimeVO>> selectDeviceLastData(DeviceParam deviceParam);
@Notes("查询设备最新数据(包括所有功能码,去掉每个字段的时间戳)")
ResultDto<Map<String, Object>> selectDeviceLastData2(DeviceParam deviceParam);
@Notes( "查询设备某些列最新数据(包括所有功能码)")
ResultDto<Map<String, DevDataWithTimeVO>> selectLastNotNullData(DeviceParam deviceParam);
/**
* 查询设备历史数据历史数据
*
* @param deviceParam 入参
* @return 设备历史数据
*/
@Notes("查询设备历史数据(历史数据)")
ResultDto<PageDto<Map<String, Object>>> selectHistoryData(DeviceParam deviceParam);
/**
* 查询设备无效历史数据无效历史数据
*
* @param deviceInvalidDataParam 入参
* @return 设备历史无效数据
*/
@Notes("查询设备无效历史数据(无效历史数据)")
ResultDto<List<Map<String, Object>>> selectInvalidHistoryData(DeviceInvalidDataParam deviceInvalidDataParam);
/**
* 插入或更新数据
*
* @param deviceDataParam 设备数据
* @return 操作结果
*/
@Notes("插入或更新数据")
ResultDto<Boolean> insertData(DeviceDataParam deviceDataParam);
/**
* 批量插入或更新数据
*
* @param deviceDataList 设备数据列表
* @return 操作结果
*/
@Notes("批量插入或更新数据")
ResultDto<Boolean> insertDataBatch(List<DeviceDataParam> deviceDataList);
/**
* 设备模板变动通知
* @param changeNoticeParam
* @return
*/
@Notes("设备模板变动通知")
ResultDto<Boolean> templateChangeNotice(TemplateChangeNoticeParam changeNoticeParam);
/**
* 设备归属关系变动通知
* @param deviceChangeRelationshipParam
* @return
*/
@Notes("设备归属关系变动通知")
ResultDto<Boolean> deviceChangeRelationship(DeviceChangeRelationshipParam deviceChangeRelationshipParam);
/**
* 批量设备归属关系变动通知
* @param deviceChangeRelationshipParams
* @return
*/
@Notes("批量设备归属关系变动通知")
ResultDto<Boolean> batchDeviceChangeRelationship(List<DeviceChangeRelationshipParam> deviceChangeRelationshipParams);
/**
* 批量查询设备状态最后上报时间
* @param deviceStatusParams
* @return
*/
@Notes("批量查询设备状态,最后上报时间")
ResultDto<List<DeviceStatusEntity>> batchSelectDeviceListStatus(List<DeviceStatusParam> deviceStatusParams);
/**
* 查询设备特定时段非在线状态
* @param periodStatusParam
* @return
*/
@Notes("查询设备特定时段非在线状态")
ResultDto<Integer> selectPeriodStatus(PeriodStatusParam periodStatusParam);
/**
* 统计JC100设备用水量数据
*
* @param deviceWaterCountParam 入参
* @return
*/
@Notes("统计JC100设备用水量数据")
ResultDto<List<DeviceWaterCountVo>> useWaterCount(DeviceWaterCountParam deviceWaterCountParam);
/**
* 广播录音文件记录分页查询
*
* @param devFileInfoPageParam
* @return
*/
@Notes("广播录音文件记录分页查询")
PageDto<DevFileInfoVo> selectSoundFilePage(DevFileInfoPageParam devFileInfoPageParam);
}

View File

@ -0,0 +1,35 @@
package com.fourfaith.iot.datacenter.dubbo.service;
import com.fourfaith.common.annotation.Notes;
import com.fourfaith.common.pojo.ResultDto;
import com.fourfaith.iot.datacenter.dubbo.pojo.dto.FileExportDto;
import com.fourfaith.iot.datacenter.dubbo.pojo.param.DeviceExportParam;
import com.fourfaith.iot.datacenter.dubbo.pojo.param.DeviceFileExportParam;
/**
* @Name DeviceExportDubboService
* @Description 设备历史数据导出dubbo接口
* @Author shiyunan
* @Create 2022/12/15
*/
@Notes("设备历史数据导出dubbo接口")
public interface DeviceExportDubboService {
/**
* 导出设备数据
* @param deviceExportParam
* @return
*/
@Notes("导出设备数据")
@Deprecated
ResultDto<Long> exportRaw(DeviceExportParam deviceExportParam);
/**
* 导出设备数据
* @param deviceFileExportParam
* @return
*/
@Notes("导出设备数据")
ResultDto<FileExportDto> export(DeviceFileExportParam deviceFileExportParam);
}

View File

@ -0,0 +1,16 @@
package com.fourfaith.iot.datacenter.dubbo.service;
import com.fourfaith.common.pojo.ResultDto;
import java.io.File;
/**
* @Name UploadPictureDubboService
* @Description 设备图片上传dubbo接口
* @Author shiyunan
* @Create 2022/6/22
*/
public interface UploadPictureDubboService {
ResultDto<Boolean> putFile(byte[] bytes, String fileName);
}

View File

@ -0,0 +1,45 @@
package com.fourfaith.iot.push.dubbo.pojo.bean.push;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fourfaith.common.annotation.Notes;
import lombok.Data;
import java.io.Serializable;
/**
* @author shiyunan
*/
@Notes("推送联系人对象入参")
@Data
public class AlarmPushUserBean implements Serializable {
private static final long serialVersionUID = 2946868475148995133L;
@Notes("主键id")
@JsonFormat(shape = JsonFormat.Shape.STRING)
private Long id;
@Notes("用户id")
@JsonFormat(shape = JsonFormat.Shape.STRING)
private Long userId;
@Notes("通知人姓名")
private String realName;
@Notes("通知人用户姓名")
private String userName;
@Notes("手机号码")
private String phoneNumber;
@Notes("邮箱地址")
private String email;
@Notes("应用id")
@JsonFormat(shape = JsonFormat.Shape.STRING)
private Long applicationId;
@Notes("租户id")
@JsonFormat(shape = JsonFormat.Shape.STRING)
private Long tenantId;
}

View File

@ -0,0 +1,31 @@
package com.fourfaith.iot.push.dubbo.pojo.bean.push;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fourfaith.common.annotation.Notes;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.io.Serializable;
/**
* @Name MonitorPropBean
* @Description 监测指标属性实体
* @Author shiyunan
* @Create 2022/6/15 11:51
*/
@Data
@AllArgsConstructor
@NoArgsConstructor
@Notes("推送标签键值对")
public class PushPropBean implements Serializable {
private static final long serialVersionUID = 7141418501889053367L;
@Notes("字段名")
private String key;
@Notes("字段值")
@JsonFormat(shape = JsonFormat.Shape.STRING)
private Long value;
}

View File

@ -0,0 +1,146 @@
package com.fourfaith.iot.push.dubbo.pojo.dto;
import java.io.Serializable;
import java.util.Collection;
import java.util.Collections;
import java.util.List;
/**
* @Name BasePageParam
* @Description 分页响应参数
* @Author shiyunan
* @Create 2022/5/17 11:31
*/
public class PageDto<T> implements Serializable {
private static final long serialVersionUID = -5165206006774568675L;
public static final int DEFAULT_NAVIGATE_PAGES = 8;
public static final PageDto EMPTY = new PageDto(Collections.emptyList());
/**
* 当前页
*/
private int pageNum;
/**
* 每页的数量
*/
private int pageSize;
/**
* 当前页的数量
*/
private int size;
/**
* 总记录数
*/
private long total;
/**
* 结果集
*/
private List<T> list;
/**
* 信息扩展字段
*/
private String returnMsg;
public PageDto() {
}
/**
* 包装Page对象
*
* @param list page结果
*/
public PageDto(List<T> list) {
if (list instanceof Collection) {
this.pageNum = 1;
this.pageSize = list.size();
this.size = list.size();
}
}
public long getTotal() {
return total;
}
public void setTotal(long total) {
this.total = total;
}
public List<T> getList() {
return list;
}
public void setList(List<T> list) {
this.list = list;
}
public static <T> PageDto<T> of(List<T> list) {
return new PageDto<T>(list);
}
/**
* 返回一个空的 Pageinfo 对象
*
* @return
*/
public static <T> PageDto<T> emptyPageInfo() {
return EMPTY;
}
/**
* 是否包含内容
*/
public boolean hasContent() {
return this.size > 0;
}
public int getPageNum() {
return pageNum;
}
public void setPageNum(int pageNum) {
this.pageNum = pageNum;
}
public int getPageSize() {
return pageSize;
}
public void setPageSize(int pageSize) {
this.pageSize = pageSize;
}
public int getSize() {
return size;
}
public void setSize(int size) {
this.size = size;
}
public String getReturnMsg() {
return returnMsg;
}
public void setReturnMsg(String returnMsg) {
this.returnMsg = returnMsg;
}
@Override
public String toString() {
return "PageDto{" +
"pageNum=" + pageNum +
", pageSize=" + pageSize +
", size=" + size +
", total=" + total +
", list=" + list +
'}';
}
}

View File

@ -0,0 +1,87 @@
package com.fourfaith.iot.push.dubbo.pojo.dto.push;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fourfaith.common.annotation.Notes;
import com.fourfaith.iot.push.dubbo.pojo.bean.push.AlarmPushUserBean;
import com.fourfaith.iot.push.dubbo.pojo.bean.push.PushPropBean;
import lombok.Data;
import java.io.Serializable;
import java.util.List;
/**
* 推送用户对象
* @author shiyunan
*/
@Notes("告警推送对象入参")
@Data
public class AlarmPushDto implements Serializable {
private static final long serialVersionUID = 2946868475148995133L;
@Notes("主键id")
@JsonFormat(shape = JsonFormat.Shape.STRING)
private Long id;
@Notes("告警规则id")
@JsonFormat(shape = JsonFormat.Shape.STRING)
private Long alarmRuleId;
@Notes("告警通知名称")
private String pushName;
@Notes("推送类型systemsmsemail")
private String pushType;
@Notes("告警通知方式,系统消息,邮件,短信")
private String pushTypeName;
/**
* 弹窗方式 1-手动关闭2-自动关闭
*/
private Integer popupType;
/**
* 弹窗音频
*/
private String popupAudio;
@Notes("应用id")
@JsonFormat(shape = JsonFormat.Shape.STRING)
private Long applicationId;
@Notes("租户id")
@JsonFormat(shape = JsonFormat.Shape.STRING)
private Long tenantId;
@Notes("每次都推送01")
private Integer alwaysPush;
@Notes("每N条推送一次")
private Integer cycleNumber;
@Notes("最多多少条结合cycle_number")
private Integer maxNumber;
@Notes("间隔多少分钟")
private Integer intervalMinutes;
@Notes("推送模板id")
@JsonFormat(shape = JsonFormat.Shape.STRING)
private Long alarmPushTemplateId;
@Notes("推送模板名称")
private String pushTemplateName;
@Notes("是否可用0禁用1可用")
private Integer enable;
@Notes("推送规则json,用于前端结构存储和回显")
private String pushRule;
@Notes("自定义标签")
private List<PushPropBean> tagValueList;
@Notes("告警联系人")
private List<AlarmPushUserBean> alarmPushUserList;
}

View File

@ -0,0 +1,88 @@
package com.fourfaith.iot.push.dubbo.pojo.dto.push;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fourfaith.common.annotation.Notes;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.io.Serializable;
import java.util.Date;
/**
* @author shiyunan
*/
@Data
@AllArgsConstructor
@NoArgsConstructor
@Notes("告警日志响应参数")
public class AlarmPushLogDto implements Serializable {
private static final long serialVersionUID = 6851741210360188400L;
@Notes("主键id")
@JsonFormat(shape = JsonFormat.Shape.STRING)
private Long id;
@Notes("告警推送配置id")
@JsonFormat(shape = JsonFormat.Shape.STRING)
private Long alarmPushId;
@Notes("告警推送模板id")
@JsonFormat(shape = JsonFormat.Shape.STRING)
private Long alarmPushTemplateId;
@Notes("推送内容")
private String pushContent;
@Notes("推送类型systemsmsemail")
private String pushType;
@Notes("短信/邮件推送状态0失败1成功系统消息0未读1已读")
private Integer status;
@Notes("推送失败原因")
private String reason;
@Notes("监测指标id")
@JsonFormat(shape = JsonFormat.Shape.STRING)
private Long indicatorId;
@Notes("测点id")
@JsonFormat(shape = JsonFormat.Shape.STRING)
private Long monitorPointId;
@Notes("触发器类型0设备离线1设备失联2监测指标/测点要素3原始要素/设备要素4特征值告警5设备离线比例")
private Integer triggerType;
@Notes("告警等级")
private Integer level;
@JsonFormat(shape = JsonFormat.Shape.STRING, pattern="yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
@Notes("告警推送时间")
private Date pushTime;
@Notes("用户名")
private String realName;
@Notes("用户名")
private String userName;
@Notes("手机号")
private String phoneNumber;
@Notes("邮箱")
private String email;
@Notes("租户id")
@JsonFormat(shape = JsonFormat.Shape.STRING)
private Long tenantId;
@Notes("应用id")
@JsonFormat(shape = JsonFormat.Shape.STRING)
private Long applicationId;
@Notes("消息类型")
@Deprecated
private Integer msgType = 0;
}

View File

@ -0,0 +1,42 @@
package com.fourfaith.iot.push.dubbo.pojo.dto.push;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fourfaith.common.annotation.Notes;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.io.Serializable;
import java.util.Date;
/**
* @author shiyunan
*/
@Data
@AllArgsConstructor
@NoArgsConstructor
@Notes("告警推送日志,用户维度聚合")
public class AlarmPushLogGroupUserDto implements Serializable {
private static final long serialVersionUID = 6851741210360188400L;
@Notes("告警推送配置id")
@JsonFormat(shape = JsonFormat.Shape.STRING)
private Long alarmPushId;
@Notes("用户名")
private String realName;
@Notes("短信/邮件推送状态0失败1成功系统消息0未读1已读")
private Integer systemStatus;
@Notes("短信/邮件推送状态0失败1成功系统消息0未读1已读")
private Integer smsStatus;
@Notes("短信/邮件推送状态0失败1成功系统消息0未读1已读")
private Integer emailStatus;
@JsonFormat(shape = JsonFormat.Shape.STRING, pattern="yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
@Notes("告警推送时间")
private Date pushTime;
}

View File

@ -0,0 +1,71 @@
package com.fourfaith.iot.push.dubbo.pojo.dto.push;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fourfaith.common.annotation.Notes;
import com.fourfaith.iot.push.dubbo.pojo.bean.push.PushPropBean;
import lombok.Data;
import java.io.Serializable;
import java.util.Date;
import java.util.List;
/**
* 推送用户对象
* @author shiyunan
*/
@Notes("告警推送对象入参")
@Data
public class AlarmPushTemplateDto implements Serializable {
private static final long serialVersionUID = 2946868475148995133L;
@Notes("主键id")
@JsonFormat(shape = JsonFormat.Shape.STRING)
private Long id;
@Notes("通知模板名称")
private String pushTemplateName;
@Notes("通知模板类型systememailsms")
private String pushType;
@Notes("通知模板类型名称,系统消息,邮件,短信")
private String pushTypeName;
@Notes("模板内容")
private String pushTemplateContent;
@Notes("备注")
private String remark;
@Notes("应用id")
@JsonFormat(shape = JsonFormat.Shape.STRING)
private Long applicationId;
@Notes("租户id")
@JsonFormat(shape = JsonFormat.Shape.STRING)
private Long tenantId;
@Notes("是否启用1启用 0关闭")
private Integer enable;
@Notes("创建时间")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
private Date createAt;
@Notes("更新时间")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
private Date updateAt;
@Notes("状态 0未审核1已审核-1表示审核未通过或审核失败")
private int state;
@Notes("失败原因")
private String reason;
@Notes("腾讯模板id")
private Long tencentTemplateId;
@Notes("自定义标签")
private List<PushPropBean> tagValueList;
}

View File

@ -0,0 +1,34 @@
package com.fourfaith.iot.push.dubbo.pojo.param;
import com.fourfaith.common.annotation.Notes;
import lombok.Data;
import java.io.Serializable;
/**
* @Name BasePageParam
* @Description 分页查询基类
* @Author shiyunan
* @Create 2022/5/17 11:31
*/
@Data
@Notes("分页查询基类")
public class BasePageParam implements Serializable {
private static final long serialVersionUID = 3358163426265854093L;
@Notes("页码")
protected Integer pageNum;
@Notes("分页数量")
protected Integer pageSize;
public void initPageParam(){
if(pageNum == null){
pageNum = 1;
}
if(pageSize == null){
pageSize = 20;
}
}
}

View File

@ -0,0 +1,46 @@
package com.fourfaith.iot.push.dubbo.pojo.param;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.io.Serializable;
@Data
@AllArgsConstructor
@NoArgsConstructor
public class PushEmailParam implements Serializable {
private static final long serialVersionUID = -4894206006986617304L;
/**
* 发送方邮箱
*/
private String email;
/**
* 邮箱认证码
*/
private String emailPassword;
/**
* 邮箱类型
*/
private String emailType;
/**
* 发送信息
*/
private String sendMsg;
/**
* 接受人
*/
private String[] receivers;
/**
* 发送主题
*/
private String subject;
/**
* 发送方名
*/
private String sendName;
}

View File

@ -0,0 +1,34 @@
package com.fourfaith.iot.push.dubbo.pojo.param;
import lombok.Data;
import java.io.Serializable;
import java.util.List;
import java.util.Map;
/**
* @Name PushQueueParam
* @Description demo
* @Author zhangrw
* @Create 2022/4/8
*/
@Data
public class PushQueueParam implements Serializable {
private static final long serialVersionUID = -2398775242704479200L;
private String classificationCode;
private String configId;
private String templateId;
private String content;
/**
*发送数据
*/
private Map<String,String> data;
/**
*联系方式
*/
private List<String> contactInfos;
private Long delayTime;
private String reason;
private String companyCode;
}

View File

@ -0,0 +1,26 @@
package com.fourfaith.iot.push.dubbo.pojo.param;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.io.Serializable;
/**
* @Name SmartSmsPushParam
* @Description demo
* @Author zhangrw
* @Create 2022/8/27
*/
@AllArgsConstructor
@Data
@NoArgsConstructor
public class SmartSmsPushParam implements Serializable {
private String content;
/**
* 手机号多个提交逗号分隔
*/
private String mobiles;
}

View File

@ -0,0 +1,83 @@
package com.fourfaith.iot.push.dubbo.pojo.param.push;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fourfaith.common.annotation.Notes;
import com.fourfaith.iot.push.dubbo.pojo.bean.push.PushPropBean;
import com.fourfaith.iot.push.dubbo.pojo.param.BasePageParam;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.NoArgsConstructor;
import java.io.Serializable;
import java.util.Date;
import java.util.List;
/**
* @author shiyunan
*/
@EqualsAndHashCode(callSuper = true)
@Data
@AllArgsConstructor
@NoArgsConstructor
@Notes("告警推送记录分页入参")
public class AlarmPushLogPageParam extends BasePageParam implements Serializable {
private static final long serialVersionUID = 4205565246043012032L;
@Notes("告警推送配置id")
private Long alarmPushId;
@Notes("告警等级")
private Integer level;
@Notes("推送类型systemsmsemail")
private String pushType;
@Notes("推送内容")
private String pushContent;
@Notes("推送状态0失败1成功")
private Integer status;
@Notes("手机号/邮箱")
private String phoneNumberOrEmail;
@JsonFormat(shape = JsonFormat.Shape.STRING, pattern="yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
@Notes("开始时间")
private Date startTime;
@JsonFormat(shape = JsonFormat.Shape.STRING, pattern="yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
@Notes("结束时间")
private Date endTime;
@Notes("用户id")
private Long userId;
@Notes("租户id")
private Long tenantId;
@Notes("应用id")
private Long applicationId;
@Notes("监测指标id")
private Long indicatorId;
@Notes("测点id")
private Long monitorPointId;
@Notes("测点id集合")
private List<Long> monitorPointIds;
@Notes("触发器类型0设备离线1设备失联2监测指标/测点要素3原始要素/设备要素4特征值告警5设备离线比例")
private Integer triggerType;
@Notes("语言")
private String languageType;
@Notes("自定义标签")
private List<PushPropBean> tagValueList;
@Notes("排序,默认创建时间倒序")
private String sort;
}

View File

@ -0,0 +1,68 @@
package com.fourfaith.iot.push.dubbo.pojo.param.push;
import com.fourfaith.common.annotation.Notes;
import com.fourfaith.iot.push.dubbo.pojo.bean.push.PushPropBean;
import com.fourfaith.iot.push.dubbo.pojo.param.BasePageParam;
import lombok.Data;
import java.io.Serializable;
import java.util.List;
/**
* 推送用户对象
* @author shiyunan
*/
@Notes("告警推送对象入参")
@Data
public class AlarmPushPageParam extends BasePageParam implements Serializable {
private static final long serialVersionUID = 2946868475148995133L;
@Notes("主键id")
private Long id;
@Notes("告警规则id")
private Long alarmRuleId;
@Notes("告警通知名称")
private String pushName;
@Notes("推送类型systemsmsemail")
private String pushType;
@Notes("告警通知方式,系统消息,邮件,短信")
private String pushTypeName;
@Notes("应用id")
private Long applicationId;
@Notes("租户id")
private Long tenantId;
@Notes("每次都推送01")
private Integer alwaysPush;
@Notes("每N条推送一次")
private Integer cycleNumber;
@Notes("最多多少条结合cycle_number")
private Integer maxNumber;
@Notes("间隔多少分钟")
private Integer intervalMinutes;
@Notes("推送模板id")
private Long alarmPushTemplateId;
@Notes("是否可用0禁用1可用")
private Integer enable;
@Notes("推送规则json,用于前端结构存储和回显")
private String pushRule;
@Notes("自定义标签")
private List<PushPropBean> tagValueList;
@Notes("排序,默认创建时间倒序")
private String sort;
}

View File

@ -0,0 +1,81 @@
package com.fourfaith.iot.push.dubbo.pojo.param.push;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fourfaith.common.annotation.Notes;
import com.fourfaith.iot.push.dubbo.pojo.bean.push.PushPropBean;
import lombok.Data;
import javax.xml.soap.Text;
import java.io.Serializable;
import java.util.List;
/**
* 推送用户对象
* @author shiyunan
*/
@Notes("告警推送对象入参")
@Data
public class AlarmPushParam implements Serializable {
private static final long serialVersionUID = 2946868475148995133L;
@JsonFormat(shape = JsonFormat.Shape.STRING)
@Notes("主键id")
private Long id;
@JsonFormat(shape = JsonFormat.Shape.STRING)
@Notes("告警规则id")
private Long alarmRuleId;
@Notes("告警通知名称")
private String pushName;
@Notes("推送类型systemsmsemailpopup")
private String pushType;
@Notes("告警通知方式,系统消息,邮件,短信,弹窗")
private String pushTypeName;
@JsonFormat(shape = JsonFormat.Shape.STRING)
@Notes("应用id")
private Long applicationId;
@JsonFormat(shape = JsonFormat.Shape.STRING)
@Notes("租户id")
private Long tenantId;
@Notes("弹窗方式1手动关闭 2自动关闭")
private Integer popupType;
@Notes("弹窗音频地址")
private String popupAudio;
@Notes("每次都推送01")
private Integer alwaysPush;
@Notes("每N条推送一次")
private Integer cycleNumber;
@Notes("最多多少条结合cycle_number")
private Integer maxNumber;
@Notes("间隔多少分钟")
private Integer intervalMinutes;
@JsonFormat(shape = JsonFormat.Shape.STRING)
@Notes("推送模板id")
private Long alarmPushTemplateId;
@Notes("是否可用0禁用1可用")
private Integer enable;
@Notes("推送规则json,用于前端结构存储和回显")
private String pushRule;
@Notes("自定义标签")
private List<PushPropBean> tagValueList;
@JsonFormat(shape = JsonFormat.Shape.STRING)
@Notes("推送用户id列表")
private List<Long> userIds;
}

View File

@ -0,0 +1,58 @@
package com.fourfaith.iot.push.dubbo.pojo.param.push;
import com.fourfaith.common.annotation.Notes;
import com.fourfaith.iot.push.dubbo.pojo.bean.push.PushPropBean;
import com.fourfaith.iot.push.dubbo.pojo.param.BasePageParam;
import lombok.Data;
import lombok.EqualsAndHashCode;
import java.io.Serializable;
import java.util.List;
/**
* 推送模板对象
* @author shiyunan
*/
@EqualsAndHashCode(callSuper = true)
@Notes("告警推送对象入参")
@Data
public class AlarmPushTemplatePageParam extends BasePageParam implements Serializable {
private static final long serialVersionUID = 2946868475148995133L;
@Notes("主键id")
private Long id;
@Notes("通知模板名称")
private String pushTemplateName;
@Notes("通知模板类型systememailsms")
private String pushType;
@Notes("通知模板类型名称,系统消息,邮件,短信")
private String pushTypeName;
@Notes("模板内容")
private String pushTemplateContent;
@Notes("应用id")
private Long applicationId;
@Notes("租户id")
private Long tenantId;
@Notes("是否启用1启用 0关闭")
private Integer enable;
@Notes("按创建时间排序,正序/倒序asc/desc")
private String sort;
@Notes("创建时间")
private Long createAt;
@Notes("更新时间")
private Long updateAt;
@Notes("自定义标签")
private List<PushPropBean> tagValueList;
}

View File

@ -0,0 +1,59 @@
package com.fourfaith.iot.push.dubbo.pojo.param.push;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fourfaith.common.annotation.Notes;
import com.fourfaith.iot.push.dubbo.pojo.bean.push.PushPropBean;
import lombok.Data;
import java.io.Serializable;
import java.util.Date;
import java.util.List;
/**
* 推送用户对象
* @author shiyunan
*/
@Notes("告警推送对象入参")
@Data
public class AlarmPushTemplateParam implements Serializable {
private static final long serialVersionUID = 2946868475148995133L;
@Notes("主键id")
private Long id;
@Notes("通知模板名称")
private String pushTemplateName;
@Notes("通知模板类型systememailsmspopup")
private String pushType;
@Notes("通知模板类型名称,系统消息,邮件,短信,弹窗")
private String pushTypeName;
@Notes("模板内容")
private String pushTemplateContent;
@Notes("备注")
private String remark;
@Notes("应用id")
private Long applicationId;
@Notes("租户id")
private Long tenantId;
@Notes("是否启用1启用 0关闭")
private Integer enable;
@Notes("创建时间")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
private Date createAt;
@Notes("更新时间")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
private Date updateAt;
@Notes("自定义标签")
private List<PushPropBean> tagValueList;
}

View File

@ -0,0 +1,48 @@
package com.fourfaith.iot.push.dubbo.pojo.param.settime;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.io.Serializable;
import java.util.Date;
/**
* @description 推送集时通短信请求参数
* @author zhangrongwen
*/
@Data
@AllArgsConstructor
@NoArgsConstructor
public class SetTimeSmsPushParam implements Serializable {
/**
* 登录名
*/
private String loginName;
/**
* 密码
*/
private String password;
/**
* 内容
*/
private String content;
/**
* 联系方式多个逗号隔开
*/
private String mobiles;
/**
* 流水Id
*/
private String searchId;
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
private Date pushTime;
}

View File

@ -0,0 +1,73 @@
package com.fourfaith.iot.push.dubbo.service;
import com.fourfaith.common.annotation.Notes;
import com.fourfaith.common.pojo.ResultDto;
import com.fourfaith.iot.push.dubbo.pojo.dto.PageDto;
import com.fourfaith.iot.push.dubbo.pojo.dto.push.AlarmPushDto;
import com.fourfaith.iot.push.dubbo.pojo.param.push.AlarmPushPageParam;
import com.fourfaith.iot.push.dubbo.pojo.param.push.AlarmPushParam;
import java.util.List;
/**
* @author shiyunan
*/
@Notes("推送dubbo服务")
public interface AlarmPushDubboService {
/**
* 添加推送规则
*
* @param alarmPushParam
* @return
*/
@Notes("添加推送规则")
ResultDto<Boolean> add(AlarmPushParam alarmPushParam);
/**
* 分页查询推送规则
*
* @param alarmPushPageParam
* @return
*/
@Notes("分页查询推送规则")
ResultDto<PageDto<AlarmPushDto>> page(AlarmPushPageParam alarmPushPageParam);
/**
* 更新推送规则
*
* @param alarmPushParam
* @return
*/
@Notes("更新推送规则")
ResultDto<Boolean> update(AlarmPushParam alarmPushParam);
/**
* 更新推送规则是否启用
*
* @param alarmPushParam
* @return
*/
@Notes("更新推送规则是否启用")
ResultDto<Boolean> updateEnable(AlarmPushParam alarmPushParam);
/**
* 批量删除推送规则
*
* @param alarmPushParams
* @return
*/
@Notes("批量删除推送规则")
ResultDto<Boolean> batchDelete(List<AlarmPushParam> alarmPushParams);
/**
* 根据id获取推送规则
* @param alarmPushParam
* @return
*/
@Notes("根据id获取推送规则")
ResultDto<AlarmPushDto> getById(AlarmPushParam alarmPushParam);
}

View File

@ -0,0 +1,40 @@
package com.fourfaith.iot.push.dubbo.service;
import com.fourfaith.common.annotation.Notes;
import com.fourfaith.common.pojo.ResultDto;
import com.fourfaith.iot.push.dubbo.pojo.dto.PageDto;
import com.fourfaith.iot.push.dubbo.pojo.dto.push.AlarmPushLogDto;
import com.fourfaith.iot.push.dubbo.pojo.param.push.AlarmPushLogPageParam;
/**
* @author shiyunan
*/
@Notes("推送日志dubbo接口")
public interface AlarmPushLogDubboService {
/**
* 分页查询
* @param alarmPushLogPageParam 分页入参
* @return 分页数据
*/
@Notes("分页查询")
ResultDto<PageDto<AlarmPushLogDto>> page(AlarmPushLogPageParam alarmPushLogPageParam);
/**
* 查推送日志并标记为已读
* @param id 消息ID入参
* @return 系统消息详情
*/
@Notes("查推送日志,如果是系统消息,标记为已读(status0未读1已读)")
ResultDto<AlarmPushLogDto> getById(Long id);
/**
* 按人员标记全部系统消息为已读(status0未读1已读)
* @param id 用户ID入参
* @return 操作结果
*/
@Notes("按人员标记全部系统消息为已读(status0未读1已读)")
ResultDto<Boolean> systemAllReadByUserId(Long id);
}

View File

@ -0,0 +1,66 @@
package com.fourfaith.iot.push.dubbo.service;
import com.fourfaith.common.annotation.Notes;
import com.fourfaith.common.pojo.ResultDto;
import com.fourfaith.iot.push.dubbo.pojo.dto.PageDto;
import com.fourfaith.iot.push.dubbo.pojo.dto.push.AlarmPushTemplateDto;
import com.fourfaith.iot.push.dubbo.pojo.param.push.AlarmPushTemplatePageParam;
import com.fourfaith.iot.push.dubbo.pojo.param.push.AlarmPushTemplateParam;
import java.util.List;
/**
* @author shiyunan
*/
@Notes("告警推送模板dubbo服务")
public interface AlarmPushTemplateDubboService {
/**
* 添加模板
* @param alarmPushTemplateParam
* @return
*/
@Notes("添加模板")
ResultDto<Boolean> add(AlarmPushTemplateParam alarmPushTemplateParam);
/**
* 修改模板
* @param alarmPushTemplateParam
* @return
*/
@Notes("修改模板")
ResultDto<Boolean> update(AlarmPushTemplateParam alarmPushTemplateParam);
/**
* 模板启用禁用
* @param alarmPushTemplateParam
* @return
*/
@Notes("模板启用禁用")
ResultDto<Boolean> updateEnable(AlarmPushTemplateParam alarmPushTemplateParam);
/**
* 模板分页查询
* @param alarmPushTemplatePageParam
* @return
*/
@Notes("模板分页查询")
ResultDto<PageDto<AlarmPushTemplateDto>> page(AlarmPushTemplatePageParam alarmPushTemplatePageParam);
/**
* 删除模板
* @param alarmPushTemplateParamList
* @return
*/
@Notes("删除模板")
ResultDto<Boolean> batchDelete(List<AlarmPushTemplateParam> alarmPushTemplateParamList);
/**
* 根据id获取推送模板
* @param alarmPushTemplateParam
* @return
*/
@Notes("根据id获取推送模板")
ResultDto<AlarmPushTemplateDto> getById(AlarmPushTemplateParam alarmPushTemplateParam);
}

View File

@ -0,0 +1,33 @@
package com.fourfaith.iot.push.dubbo.service;
import com.fourfaith.common.annotation.Notes;
import com.fourfaith.common.pojo.ResultDto;
import com.fourfaith.iot.datacenter.dubbo.pojo.dto.PageDto;
import com.fourfaith.iot.ruleengine.dubbo.pojo.dto.DeviceAlarmRelDto;
import com.fourfaith.iot.ruleengine.dubbo.pojo.param.DeviceAlarmPageParam;
/**
* @author chapin
*/
@Notes("推送设备告警日志dubbo接口")
public interface DeviceAlarmLogDubboService {
/**
* 分页查询
* @param deviceAlarmPageParam 分页入参
* @return 分页数据
*/
@Notes("分页查询")
ResultDto<PageDto<DeviceAlarmRelDto>> page(DeviceAlarmPageParam deviceAlarmPageParam);
@Notes("处理告警")
ResultDto<Boolean> handleAlarm(DeviceAlarmRelDto deviceAlarmRelDto);
/**
* 推送弹窗数据
*/
@Notes("推送弹窗数据")
ResultDto<Boolean> pushPopupData(Long applicationId,Long tenantId);
}

View File

@ -0,0 +1,18 @@
package com.fourfaith.iot.push.dubbo.service;
import com.fourfaith.common.pojo.ResultDto;
import com.fourfaith.iot.push.dubbo.pojo.param.PushQueueParam;
/**
* @Name PushQueueDubboService
* @Description demo
* @Author zhangrw
* @Create 2022/4/8
*/
public interface PushQueueDubboService {
/**
* 添加推送信息
* @param paramPushQueueParam
* @return
*/
ResultDto<Boolean> addPushSmsQueue(PushQueueParam paramPushQueueParam);
}

View File

@ -0,0 +1,32 @@
package com.fourfaith.iot.ruleengine.config;
import com.fourfaith.common.utils.SnowFlakeUtil;
import org.springframework.beans.factory.InitializingBean;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.context.annotation.Configuration;
@Configuration
public class SnowFlakeConfig implements InitializingBean {
@Value("${snow-flake.workerId}")
private static long workerId;
@Value("${snow-flake.datacenterId}")
private static long datacenterId;
@Value("${snow-flake.sequence}")
private static long sequence;
private static SnowFlakeUtil snowFlakeUtil = new SnowFlakeUtil(workerId,datacenterId,sequence);
public static SnowFlakeUtil getSnowFlakeUtil(){
return snowFlakeUtil;
}
@Override
public void afterPropertiesSet() throws Exception {
SnowFlakeConfig.snowFlakeUtil = new SnowFlakeUtil(workerId,datacenterId,sequence);
}
}

View File

@ -0,0 +1,31 @@
package com.fourfaith.iot.ruleengine.dubbo.pojo;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import com.fourfaith.iot.ruleengine.config.SnowFlakeConfig;
import lombok.Data;
import java.io.Serializable;
/**
* @description demo
* @author zhangrongwen
*/
@Data
public class BaseDomain implements Serializable {
private static final long serialVersionUID = 626239331214327133L;
@JsonSerialize(using = ToStringSerializer.class)
@JsonFormat(shape = JsonFormat.Shape.STRING)
private Long id = SnowFlakeConfig.getSnowFlakeUtil().nextId();
/**
* 创建时间时间戳
*/
private Long createAt;
/**
* 更新时间时间戳
*/
private Long updateAt;
}

View File

@ -0,0 +1,32 @@
package com.fourfaith.iot.ruleengine.dubbo.pojo;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import com.fourfaith.common.annotation.Notes;
import com.fourfaith.iot.ruleengine.config.SnowFlakeConfig;
import lombok.Data;
import java.io.Serializable;
import java.util.Date;
/**
* @author shiyunan
*/
@Data
public class BaseDto implements Serializable {
private static final long serialVersionUID = 747214524665114775L;
@JsonSerialize(using = ToStringSerializer.class)
@JsonFormat(shape = JsonFormat.Shape.STRING)
private Long id = SnowFlakeConfig.getSnowFlakeUtil().nextId();
@Notes("创建时间")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
private Date createAt;
@Notes("更新时间")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
private Date updateAt;
}

View File

@ -0,0 +1,23 @@
package com.fourfaith.iot.ruleengine.dubbo.pojo.bean;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.io.Serializable;
@Data
@AllArgsConstructor
@NoArgsConstructor
public class DeviceLostContactBean implements Serializable {
/**
* 告警类别
*/
private Integer alarmType;
/**
* 告警未上报时间
*/
private Integer deviceNotUploadTime;
private Integer level;
}

View File

@ -0,0 +1,24 @@
package com.fourfaith.iot.ruleengine.dubbo.pojo.bean;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.io.Serializable;
import java.util.Map;
@Data
@AllArgsConstructor
@NoArgsConstructor
public class DeviceOfflineBean implements Serializable {
private static final long serialVersionUID = 3617064273336068004L;
/**
* 0 1 2
*/
private Integer type;
private Map<String, Integer> params;
private Integer alarmType;
private Integer level;
}

Some files were not shown because too many files have changed in this diff Show More