473 lines
8.5 KiB
SQL
473 lines
8.5 KiB
SQL
-- IoT 模块测试数据库表结构
|
|
-- 基于 H2 数据库语法,兼容 MySQL 模式
|
|
|
|
-- IoT 场景联动规则表
|
|
CREATE TABLE IF NOT EXISTS "iot_scene_rule"
|
|
(
|
|
"id"
|
|
bigint
|
|
NOT
|
|
NULL
|
|
GENERATED
|
|
BY
|
|
DEFAULT AS
|
|
IDENTITY,
|
|
"name"
|
|
varchar
|
|
(
|
|
255
|
|
) NOT NULL DEFAULT '',
|
|
"description" varchar
|
|
(
|
|
500
|
|
) DEFAULT NULL,
|
|
"status" tinyint NOT NULL DEFAULT '0',
|
|
"triggers" text,
|
|
"actions" text,
|
|
"creator" varchar
|
|
(
|
|
64
|
|
) DEFAULT '',
|
|
"create_time" timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
|
"updater" varchar
|
|
(
|
|
64
|
|
) DEFAULT '',
|
|
"update_time" timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
|
"deleted" bit NOT NULL DEFAULT FALSE,
|
|
"tenant_id" bigint NOT NULL DEFAULT '0',
|
|
PRIMARY KEY
|
|
(
|
|
"id"
|
|
)
|
|
) COMMENT 'IoT 场景联动规则表';
|
|
|
|
-- IoT 产品表
|
|
CREATE TABLE IF NOT EXISTS "iot_product"
|
|
(
|
|
"id"
|
|
bigint
|
|
NOT
|
|
NULL
|
|
GENERATED
|
|
BY
|
|
DEFAULT AS
|
|
IDENTITY,
|
|
"name"
|
|
varchar
|
|
(
|
|
255
|
|
) NOT NULL DEFAULT '',
|
|
"product_key" varchar
|
|
(
|
|
100
|
|
) NOT NULL DEFAULT '',
|
|
"protocol_type" tinyint NOT NULL DEFAULT '0',
|
|
"category_id" bigint DEFAULT NULL,
|
|
"description" varchar
|
|
(
|
|
500
|
|
) DEFAULT NULL,
|
|
"data_format" tinyint NOT NULL DEFAULT '0',
|
|
"device_type" tinyint NOT NULL DEFAULT '0',
|
|
"net_type" tinyint NOT NULL DEFAULT '0',
|
|
"validate_type" tinyint NOT NULL DEFAULT '0',
|
|
"status" tinyint NOT NULL DEFAULT '0',
|
|
"creator" varchar
|
|
(
|
|
64
|
|
) DEFAULT '',
|
|
"create_time" timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
|
"updater" varchar
|
|
(
|
|
64
|
|
) DEFAULT '',
|
|
"update_time" timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
|
"deleted" bit NOT NULL DEFAULT FALSE,
|
|
"tenant_id" bigint NOT NULL DEFAULT '0',
|
|
PRIMARY KEY
|
|
(
|
|
"id"
|
|
)
|
|
) COMMENT 'IoT 产品表';
|
|
|
|
-- IoT 设备表
|
|
CREATE TABLE IF NOT EXISTS "iot_device"
|
|
(
|
|
"id"
|
|
bigint
|
|
NOT
|
|
NULL
|
|
GENERATED
|
|
BY
|
|
DEFAULT AS
|
|
IDENTITY,
|
|
"device_name"
|
|
varchar
|
|
(
|
|
255
|
|
) NOT NULL DEFAULT '',
|
|
"product_id" bigint NOT NULL,
|
|
"device_key" varchar
|
|
(
|
|
100
|
|
) NOT NULL DEFAULT '',
|
|
"device_secret" varchar
|
|
(
|
|
100
|
|
) NOT NULL DEFAULT '',
|
|
"nickname" varchar
|
|
(
|
|
255
|
|
) DEFAULT NULL,
|
|
"status" tinyint NOT NULL DEFAULT '0',
|
|
"status_last_update_time" timestamp DEFAULT NULL,
|
|
"last_online_time" timestamp DEFAULT NULL,
|
|
"last_offline_time" timestamp DEFAULT NULL,
|
|
"active_time" timestamp DEFAULT NULL,
|
|
"ip" varchar
|
|
(
|
|
50
|
|
) DEFAULT NULL,
|
|
"firmware_version" varchar
|
|
(
|
|
50
|
|
) DEFAULT NULL,
|
|
"device_type" tinyint NOT NULL DEFAULT '0',
|
|
"gateway_id" bigint DEFAULT NULL,
|
|
"sub_device_count" int NOT NULL DEFAULT '0',
|
|
"creator" varchar
|
|
(
|
|
64
|
|
) DEFAULT '',
|
|
"create_time" timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
|
"updater" varchar
|
|
(
|
|
64
|
|
) DEFAULT '',
|
|
"update_time" timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
|
"deleted" bit NOT NULL DEFAULT FALSE,
|
|
"tenant_id" bigint NOT NULL DEFAULT '0',
|
|
PRIMARY KEY
|
|
(
|
|
"id"
|
|
)
|
|
) COMMENT 'IoT 设备表';
|
|
|
|
-- IoT 物模型表
|
|
CREATE TABLE IF NOT EXISTS "iot_thing_model"
|
|
(
|
|
"id"
|
|
bigint
|
|
NOT
|
|
NULL
|
|
GENERATED
|
|
BY
|
|
DEFAULT AS
|
|
IDENTITY,
|
|
"product_id"
|
|
bigint
|
|
NOT
|
|
NULL,
|
|
"identifier"
|
|
varchar
|
|
(
|
|
100
|
|
) NOT NULL DEFAULT '',
|
|
"name" varchar
|
|
(
|
|
255
|
|
) NOT NULL DEFAULT '',
|
|
"description" varchar
|
|
(
|
|
500
|
|
) DEFAULT NULL,
|
|
"type" tinyint NOT NULL DEFAULT '1',
|
|
"property" text,
|
|
"creator" varchar
|
|
(
|
|
64
|
|
) DEFAULT '',
|
|
"create_time" timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
|
"updater" varchar
|
|
(
|
|
64
|
|
) DEFAULT '',
|
|
"update_time" timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
|
"deleted" bit NOT NULL DEFAULT FALSE,
|
|
"tenant_id" bigint NOT NULL DEFAULT '0',
|
|
PRIMARY KEY
|
|
(
|
|
"id"
|
|
)
|
|
) COMMENT 'IoT 物模型表';
|
|
|
|
-- IoT 设备数据表
|
|
CREATE TABLE IF NOT EXISTS "iot_device_data"
|
|
(
|
|
"id"
|
|
bigint
|
|
NOT
|
|
NULL
|
|
GENERATED
|
|
BY
|
|
DEFAULT AS
|
|
IDENTITY,
|
|
"device_id"
|
|
bigint
|
|
NOT
|
|
NULL,
|
|
"product_id"
|
|
bigint
|
|
NOT
|
|
NULL,
|
|
"identifier"
|
|
varchar
|
|
(
|
|
100
|
|
) NOT NULL DEFAULT '',
|
|
"type" tinyint NOT NULL DEFAULT '1',
|
|
"data" text,
|
|
"ts" bigint NOT NULL DEFAULT '0',
|
|
"create_time" timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
|
PRIMARY KEY
|
|
(
|
|
"id"
|
|
)
|
|
) COMMENT 'IoT 设备数据表';
|
|
|
|
-- IoT 告警配置表
|
|
CREATE TABLE IF NOT EXISTS "iot_alert_config"
|
|
(
|
|
"id"
|
|
bigint
|
|
NOT
|
|
NULL
|
|
GENERATED
|
|
BY
|
|
DEFAULT AS
|
|
IDENTITY,
|
|
"name"
|
|
varchar
|
|
(
|
|
255
|
|
) NOT NULL DEFAULT '',
|
|
"product_id" bigint NOT NULL,
|
|
"device_id" bigint DEFAULT NULL,
|
|
"rule_id" bigint DEFAULT NULL,
|
|
"status" tinyint NOT NULL DEFAULT '0',
|
|
"creator" varchar
|
|
(
|
|
64
|
|
) DEFAULT '',
|
|
"create_time" timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
|
"updater" varchar
|
|
(
|
|
64
|
|
) DEFAULT '',
|
|
"update_time" timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
|
"deleted" bit NOT NULL DEFAULT FALSE,
|
|
"tenant_id" bigint NOT NULL DEFAULT '0',
|
|
PRIMARY KEY
|
|
(
|
|
"id"
|
|
)
|
|
) COMMENT 'IoT 告警配置表';
|
|
|
|
-- IoT 告警记录表
|
|
CREATE TABLE IF NOT EXISTS "iot_alert_record"
|
|
(
|
|
"id"
|
|
bigint
|
|
NOT
|
|
NULL
|
|
GENERATED
|
|
BY
|
|
DEFAULT AS
|
|
IDENTITY,
|
|
"alert_config_id"
|
|
bigint
|
|
NOT
|
|
NULL,
|
|
"alert_name"
|
|
varchar
|
|
(
|
|
255
|
|
) NOT NULL DEFAULT '',
|
|
"product_id" bigint NOT NULL,
|
|
"device_id" bigint DEFAULT NULL,
|
|
"rule_id" bigint DEFAULT NULL,
|
|
"alert_data" text,
|
|
"alert_time" timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
|
"deal_status" tinyint NOT NULL DEFAULT '0',
|
|
"deal_time" timestamp DEFAULT NULL,
|
|
"deal_user_id" bigint DEFAULT NULL,
|
|
"deal_remark" varchar
|
|
(
|
|
500
|
|
) DEFAULT NULL,
|
|
"creator" varchar
|
|
(
|
|
64
|
|
) DEFAULT '',
|
|
"create_time" timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
|
"updater" varchar
|
|
(
|
|
64
|
|
) DEFAULT '',
|
|
"update_time" timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
|
"deleted" bit NOT NULL DEFAULT FALSE,
|
|
"tenant_id" bigint NOT NULL DEFAULT '0',
|
|
PRIMARY KEY
|
|
(
|
|
"id"
|
|
)
|
|
) COMMENT 'IoT 告警记录表';
|
|
|
|
-- IoT OTA 固件表
|
|
CREATE TABLE IF NOT EXISTS "iot_ota_firmware"
|
|
(
|
|
"id"
|
|
bigint
|
|
NOT
|
|
NULL
|
|
GENERATED
|
|
BY
|
|
DEFAULT AS
|
|
IDENTITY,
|
|
"name"
|
|
varchar
|
|
(
|
|
255
|
|
) NOT NULL DEFAULT '',
|
|
"product_id" bigint NOT NULL,
|
|
"version" varchar
|
|
(
|
|
50
|
|
) NOT NULL DEFAULT '',
|
|
"description" varchar
|
|
(
|
|
500
|
|
) DEFAULT NULL,
|
|
"file_url" varchar
|
|
(
|
|
500
|
|
) DEFAULT NULL,
|
|
"file_size" bigint NOT NULL DEFAULT '0',
|
|
"status" tinyint NOT NULL DEFAULT '0',
|
|
"creator" varchar
|
|
(
|
|
64
|
|
) DEFAULT '',
|
|
"create_time" timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
|
"updater" varchar
|
|
(
|
|
64
|
|
) DEFAULT '',
|
|
"update_time" timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
|
"deleted" bit NOT NULL DEFAULT FALSE,
|
|
"tenant_id" bigint NOT NULL DEFAULT '0',
|
|
PRIMARY KEY
|
|
(
|
|
"id"
|
|
)
|
|
) COMMENT 'IoT OTA 固件表';
|
|
|
|
-- IoT OTA 升级任务表
|
|
CREATE TABLE IF NOT EXISTS "iot_ota_task"
|
|
(
|
|
"id"
|
|
bigint
|
|
NOT
|
|
NULL
|
|
GENERATED
|
|
BY
|
|
DEFAULT AS
|
|
IDENTITY,
|
|
"name"
|
|
varchar
|
|
(
|
|
255
|
|
) NOT NULL DEFAULT '',
|
|
"firmware_id" bigint NOT NULL,
|
|
"product_id" bigint NOT NULL,
|
|
"upgrade_type" tinyint NOT NULL DEFAULT '0',
|
|
"status" tinyint NOT NULL DEFAULT '0',
|
|
"creator" varchar
|
|
(
|
|
64
|
|
) DEFAULT '',
|
|
"create_time" timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
|
"updater" varchar
|
|
(
|
|
64
|
|
) DEFAULT '',
|
|
"update_time" timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
|
"deleted" bit NOT NULL DEFAULT FALSE,
|
|
"tenant_id" bigint NOT NULL DEFAULT '0',
|
|
PRIMARY KEY
|
|
(
|
|
"id"
|
|
)
|
|
) COMMENT 'IoT OTA 升级任务表';
|
|
|
|
-- IoT OTA 升级记录表
|
|
CREATE TABLE IF NOT EXISTS "iot_ota_record"
|
|
(
|
|
"id"
|
|
bigint
|
|
NOT
|
|
NULL
|
|
GENERATED
|
|
BY
|
|
DEFAULT AS
|
|
IDENTITY,
|
|
"task_id"
|
|
bigint
|
|
NOT
|
|
NULL,
|
|
"firmware_id"
|
|
bigint
|
|
NOT
|
|
NULL,
|
|
"device_id"
|
|
bigint
|
|
NOT
|
|
NULL,
|
|
"status"
|
|
tinyint
|
|
NOT
|
|
NULL
|
|
DEFAULT
|
|
'0',
|
|
"progress"
|
|
int
|
|
NOT
|
|
NULL
|
|
DEFAULT
|
|
'0',
|
|
"error_msg"
|
|
varchar
|
|
(
|
|
500
|
|
) DEFAULT NULL,
|
|
"start_time" timestamp DEFAULT NULL,
|
|
"end_time" timestamp DEFAULT NULL,
|
|
"creator" varchar
|
|
(
|
|
64
|
|
) DEFAULT '',
|
|
"create_time" timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
|
"updater" varchar
|
|
(
|
|
64
|
|
) DEFAULT '',
|
|
"update_time" timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
|
"deleted" bit NOT NULL DEFAULT FALSE,
|
|
"tenant_id" bigint NOT NULL DEFAULT '0',
|
|
PRIMARY KEY
|
|
(
|
|
"id"
|
|
)
|
|
) COMMENT 'IoT OTA 升级记录表';
|