Phase0_alarm_generic

This commit is contained in:
2026-05-16 02:18:02 +08:00
parent 8dde75f7ec
commit 8d6cc6fd23

View File

@@ -6,12 +6,14 @@
USE gljs_main; USE gljs_main;
-- 1. 统一设备主表 -- ============================================
-- 1. 统一设备主表(★中心枢纽)
-- ============================================
DROP TABLE IF EXISTS Base_Device; DROP TABLE IF EXISTS Base_Device;
CREATE TABLE Base_Device ( CREATE TABLE Base_Device (
DeviceId INT AUTO_INCREMENT COMMENT '设备ID', DeviceId INT AUTO_INCREMENT COMMENT '设备ID',
DeviceName NVARCHAR(100) NOT NULL COMMENT '设备名称', DeviceName NVARCHAR(100) NOT NULL COMMENT '设备名称',
AdapterCode NVARCHAR(50) NOT NULL COMMENT '来源适配器(owl/mc4)', AdapterCode NVARCHAR(50) NOT NULL COMMENT '来源适配器(owl/mc4/hikvision_access)',
SourceId NVARCHAR(100) NOT NULL COMMENT '源系统设备ID', SourceId NVARCHAR(100) NOT NULL COMMENT '源系统设备ID',
DeviceCategory INT NOT NULL DEFAULT 1 COMMENT '设备大类(1视频/2IoT/3门禁/4道闸/5报警)', DeviceCategory INT NOT NULL DEFAULT 1 COMMENT '设备大类(1视频/2IoT/3门禁/4道闸/5报警)',
DeviceType NVARCHAR(50) COMMENT '设备细分类型(GB28181/TempSensor)', DeviceType NVARCHAR(50) COMMENT '设备细分类型(GB28181/TempSensor)',
@@ -42,14 +44,17 @@ CREATE TABLE Base_Device (
PRIMARY KEY (DeviceId), PRIMARY KEY (DeviceId),
UNIQUE INDEX IX_Base_Device_Adapter_Source (AdapterCode, SourceId), UNIQUE INDEX IX_Base_Device_Adapter_Source (AdapterCode, SourceId),
INDEX IX_Base_Device_RegionId (RegionId), INDEX IX_Base_Device_RegionId (RegionId),
INDEX IX_Base_Device_ParentId (ParentDeviceId) INDEX IX_Base_Device_ParentId (ParentDeviceId),
INDEX IX_Base_Device_Category (DeviceCategory)
) COMMENT '统一设备主表'; ) COMMENT '统一设备主表';
-- ============================================
-- 2. 视频设备扩展表 -- 2. 视频设备扩展表
-- ============================================
DROP TABLE IF EXISTS Device_Video_Ext; DROP TABLE IF EXISTS Device_Video_Ext;
CREATE TABLE Device_Video_Ext ( CREATE TABLE Device_Video_Ext (
ExtId INT AUTO_INCREMENT COMMENT '扩展记录ID', ExtId INT AUTO_INCREMENT COMMENT '扩展记录ID',
DeviceId INT NOT NULL COMMENT '关联设备ID', DeviceId INT NOT NULL COMMENT '关联设备ID(Base_Device)',
OwlDeviceId NVARCHAR(64) NOT NULL COMMENT 'Owl系统设备ID', OwlDeviceId NVARCHAR(64) NOT NULL COMMENT 'Owl系统设备ID',
Protocol INT DEFAULT 1 COMMENT '接入协议(1GB28181/2ONVIF/3RTMP/4RTSP)', Protocol INT DEFAULT 1 COMMENT '接入协议(1GB28181/2ONVIF/3RTMP/4RTSP)',
Manufacturer NVARCHAR(100) COMMENT '厂商', Manufacturer NVARCHAR(100) COMMENT '厂商',
@@ -59,15 +64,17 @@ CREATE TABLE Device_Video_Ext (
CreateDate DATETIME DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', CreateDate DATETIME DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
PRIMARY KEY (ExtId), PRIMARY KEY (ExtId),
UNIQUE INDEX IX_VideoExt_Owl (OwlDeviceId), UNIQUE INDEX IX_VideoExt_Owl (OwlDeviceId),
INDEX IX_VideoExt_Device (DeviceId) UNIQUE INDEX IX_VideoExt_Device (DeviceId)
) COMMENT '视频设备扩展表'; ) COMMENT '视频设备扩展表';
-- ============================================
-- 3. 视频通道表 -- 3. 视频通道表
-- ============================================
DROP TABLE IF EXISTS Video_Channel; DROP TABLE IF EXISTS Video_Channel;
CREATE TABLE Video_Channel ( CREATE TABLE Video_Channel (
ChannelId INT AUTO_INCREMENT COMMENT '通道ID', ChannelId INT AUTO_INCREMENT COMMENT '通道ID',
OwlChannelId NVARCHAR(64) NOT NULL COMMENT 'Owl系统通道ID', OwlChannelId NVARCHAR(64) NOT NULL COMMENT 'Owl系统通道ID',
DeviceId INT NOT NULL COMMENT '关联父设备ID', DeviceId INT NOT NULL COMMENT '关联父设备ID(Base_Device)',
ChannelName NVARCHAR(100) NOT NULL COMMENT '通道名称', ChannelName NVARCHAR(100) NOT NULL COMMENT '通道名称',
ChannelNo INT DEFAULT 0 COMMENT '通道编号', ChannelNo INT DEFAULT 0 COMMENT '通道编号',
OwlStreamApp NVARCHAR(50) COMMENT 'Owl流应用名', OwlStreamApp NVARCHAR(50) COMMENT 'Owl流应用名',
@@ -87,11 +94,13 @@ CREATE TABLE Video_Channel (
INDEX IX_Channel_Device (DeviceId) INDEX IX_Channel_Device (DeviceId)
) COMMENT '视频通道表'; ) COMMENT '视频通道表';
-- ============================================
-- 4. 录像记录表 -- 4. 录像记录表
-- ============================================
DROP TABLE IF EXISTS Video_Record; DROP TABLE IF EXISTS Video_Record;
CREATE TABLE Video_Record ( CREATE TABLE Video_Record (
RecordId INT AUTO_INCREMENT COMMENT '录像记录ID', RecordId INT AUTO_INCREMENT COMMENT '录像记录ID',
ChannelId INT NOT NULL COMMENT '关联通道ID', ChannelId INT NOT NULL COMMENT '关联通道ID(Video_Channel)',
OwlRecordId INT NOT NULL COMMENT 'Owl录像记录ID', OwlRecordId INT NOT NULL COMMENT 'Owl录像记录ID',
App NVARCHAR(50) COMMENT '应用名', App NVARCHAR(50) COMMENT '应用名',
Stream NVARCHAR(100) COMMENT '流ID', Stream NVARCHAR(100) COMMENT '流ID',
@@ -106,11 +115,13 @@ CREATE TABLE Video_Record (
INDEX IX_Record_Time (StartedAt) INDEX IX_Record_Time (StartedAt)
) COMMENT '录像记录表'; ) COMMENT '录像记录表';
-- ============================================
-- 5. IoT设备扩展表 -- 5. IoT设备扩展表
-- ============================================
DROP TABLE IF EXISTS Device_IoT_Ext; DROP TABLE IF EXISTS Device_IoT_Ext;
CREATE TABLE Device_IoT_Ext ( CREATE TABLE Device_IoT_Ext (
ExtId INT AUTO_INCREMENT COMMENT '扩展记录ID', ExtId INT AUTO_INCREMENT COMMENT '扩展记录ID',
DeviceId INT NOT NULL COMMENT '关联设备ID', DeviceId INT NOT NULL COMMENT '关联设备ID(Base_Device)',
Mc4DeviceId INT NOT NULL COMMENT 'MC4.0设备ID', Mc4DeviceId INT NOT NULL COMMENT 'MC4.0设备ID',
ObjectType INT COMMENT 'MC4.0对象类型', ObjectType INT COMMENT 'MC4.0对象类型',
Tag NVARCHAR(100) COMMENT '设备标签', Tag NVARCHAR(100) COMMENT '设备标签',
@@ -119,14 +130,16 @@ CREATE TABLE Device_IoT_Ext (
CreateDate DATETIME DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', CreateDate DATETIME DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
PRIMARY KEY (ExtId), PRIMARY KEY (ExtId),
UNIQUE INDEX IX_IoTExt_Mc4 (Mc4DeviceId), UNIQUE INDEX IX_IoTExt_Mc4 (Mc4DeviceId),
INDEX IX_IoTExt_Device (DeviceId) UNIQUE INDEX IX_IoTExt_Device (DeviceId)
) COMMENT '采集设备扩展表'; ) COMMENT '采集设备扩展表';
-- ============================================
-- 6. 设备点位表 -- 6. 设备点位表
-- ============================================
DROP TABLE IF EXISTS IoT_DevicePoint; DROP TABLE IF EXISTS IoT_DevicePoint;
CREATE TABLE IoT_DevicePoint ( CREATE TABLE IoT_DevicePoint (
PointId INT AUTO_INCREMENT COMMENT '点位ID', PointId INT AUTO_INCREMENT COMMENT '点位ID',
DeviceId INT NOT NULL COMMENT '关联设备ID', DeviceId INT NOT NULL COMMENT '关联设备ID(Base_Device)',
Mc4DeviceId INT NOT NULL COMMENT 'MC4.0设备ID', Mc4DeviceId INT NOT NULL COMMENT 'MC4.0设备ID',
PointIndex INT NOT NULL COMMENT '点位索引', PointIndex INT NOT NULL COMMENT '点位索引',
PointType INT COMMENT '点位类型', PointType INT COMMENT '点位类型',
@@ -143,12 +156,14 @@ CREATE TABLE IoT_DevicePoint (
INDEX IX_Point_Device (DeviceId) INDEX IX_Point_Device (DeviceId)
) COMMENT '设备点位表'; ) COMMENT '设备点位表';
-- ============================================
-- 7. 设备数据归档表 -- 7. 设备数据归档表
-- ============================================
DROP TABLE IF EXISTS IoT_DeviceData; DROP TABLE IF EXISTS IoT_DeviceData;
CREATE TABLE IoT_DeviceData ( CREATE TABLE IoT_DeviceData (
DataId INT AUTO_INCREMENT COMMENT '数据记录ID', DataId INT AUTO_INCREMENT COMMENT '数据记录ID',
DeviceId INT NOT NULL COMMENT '关联设备ID', DeviceId INT NOT NULL COMMENT '关联设备ID(Base_Device)',
PointId INT NOT NULL COMMENT '关联点位ID', PointId INT NOT NULL COMMENT '关联点位ID(IoT_DevicePoint)',
PointValue DOUBLE COMMENT '点位数值', PointValue DOUBLE COMMENT '点位数值',
UpdateTime DATETIME NOT NULL COMMENT '数据更新时间', UpdateTime DATETIME NOT NULL COMMENT '数据更新时间',
`Interval` INT DEFAULT 0 COMMENT '采集间隔(毫秒)', `Interval` INT DEFAULT 0 COMMENT '采集间隔(毫秒)',
@@ -156,16 +171,18 @@ CREATE TABLE IoT_DeviceData (
CreateDate DATETIME DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', CreateDate DATETIME DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
PRIMARY KEY (DataId), PRIMARY KEY (DataId),
INDEX IX_Data_Device (DeviceId), INDEX IX_Data_Device (DeviceId),
INDEX IX_Data_Point (PointId),
INDEX IX_Data_Time (CreateDate) INDEX IX_Data_Time (CreateDate)
) COMMENT '设备数据归档表(仅存历史快照)'; ) COMMENT '设备数据归档表(仅存历史快照)';
-- 8. 告警记录表 -- ============================================
-- 8. 告警记录表(★通用,视频/IoT/门禁均可产生)
-- ============================================
DROP TABLE IF EXISTS IoT_Alarm; DROP TABLE IF EXISTS IoT_Alarm;
CREATE TABLE IoT_Alarm ( CREATE TABLE IoT_Alarm (
AlarmId INT AUTO_INCREMENT COMMENT '告警ID', AlarmId INT AUTO_INCREMENT COMMENT '告警ID',
Mc4AlarmId NVARCHAR(64) NOT NULL COMMENT 'MC4.0告警ID', SourceAlarmId NVARCHAR(100) NOT NULL COMMENT '源系统告警ID',
DeviceId INT COMMENT '关联设备ID', DeviceId INT NOT NULL COMMENT '关联设备ID(Base_Device)',
PointId INT COMMENT '关联点位ID',
AlarmType INT DEFAULT 0 COMMENT '告警类型', AlarmType INT DEFAULT 0 COMMENT '告警类型',
AlarmLevel INT DEFAULT 1 COMMENT '告警等级(1提示/2普通/3重要/4紧急)', AlarmLevel INT DEFAULT 1 COMMENT '告警等级(1提示/2普通/3重要/4紧急)',
AlarmDesc NVARCHAR(500) COMMENT '告警描述', AlarmDesc NVARCHAR(500) COMMENT '告警描述',
@@ -178,7 +195,8 @@ CREATE TABLE IoT_Alarm (
AdapterCode NVARCHAR(50) COMMENT '来源适配器', AdapterCode NVARCHAR(50) COMMENT '来源适配器',
CreateDate DATETIME DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', CreateDate DATETIME DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
PRIMARY KEY (AlarmId), PRIMARY KEY (AlarmId),
UNIQUE INDEX IX_Alarm_Mc4 (Mc4AlarmId), UNIQUE INDEX IX_Alarm_Source (SourceAlarmId),
INDEX IX_Alarm_Device (DeviceId), INDEX IX_Alarm_Device (DeviceId),
INDEX IX_Alarm_Time (StartTime) INDEX IX_Alarm_Time (StartTime),
INDEX IX_Alarm_Level (AlarmLevel)
) COMMENT '告警记录表'; ) COMMENT '告警记录表';