173 lines
7.3 KiB
SQL
173 lines
7.3 KiB
SQL
CREATE DATABASE IF NOT EXISTS `cmii_fly_center` CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
|
||
|
||
use `cmii_fly_center`;
|
||
|
||
DROP TABLE IF EXISTS command_log;
|
||
|
||
DROP TABLE IF EXISTS drone_info;
|
||
|
||
DROP TABLE IF EXISTS file_records;
|
||
|
||
DROP TABLE IF EXISTS gateway_bound_info;
|
||
|
||
DROP TABLE IF EXISTS gateway_info;
|
||
|
||
DROP TABLE IF EXISTS storage_files;
|
||
|
||
DROP TABLE IF EXISTS track_order;
|
||
|
||
DROP TABLE IF EXISTS wayline_info;
|
||
|
||
DROP TABLE IF EXISTS wayline_info_history;
|
||
|
||
create table command_log
|
||
(
|
||
id bigint auto_increment comment '主键'
|
||
primary key,
|
||
drone_sn varchar(150) null comment '无人机 sn',
|
||
gateway_sn varchar(150) null comment '网关序列号',
|
||
gateway_type varchar(150) null comment '网关类型',
|
||
cmd_id varchar(150) null comment '指令id',
|
||
cmd_type varchar(150) not null comment '指令类型',
|
||
cmd_params varchar(255) null comment '指令参数',
|
||
response_data varchar(255) null comment '指令响应数据',
|
||
error_msg varchar(255) null comment '指令错误信息',
|
||
status int not null comment '指令状态',
|
||
start_time datetime default now() null comment '指令开始时间',
|
||
end_time datetime default now() null comment '指令结束时间',
|
||
cost_time bigint null comment '指令耗时,单位 ms',
|
||
trace_id varchar(255) null comment '追踪id'
|
||
)
|
||
comment '无人机指令日志';
|
||
|
||
create index command_log_cmd_type_index
|
||
on command_log (cmd_type);
|
||
|
||
create index command_log_drone_sn_index
|
||
on command_log (drone_sn);
|
||
|
||
create table drone_info
|
||
(
|
||
id bigint auto_increment comment '主键'
|
||
primary key,
|
||
sn varchar(150) not null comment '设备 SN',
|
||
name varchar(100) null comment '无人机名称',
|
||
manufacturer varchar(100) not null comment '厂家',
|
||
model varchar(100) not null comment '型号,如果有子型号,拼接保存',
|
||
version varchar(100) null comment '固件版本',
|
||
offline_position varchar(255) null comment '无人机下线的时候最后的点位信息,json结构数据',
|
||
constraint drone_info_pk_2
|
||
unique (sn)
|
||
)
|
||
comment '设备信息';
|
||
|
||
create table file_records
|
||
(
|
||
id bigint auto_increment comment '主键'
|
||
primary key,
|
||
file_id varchar(255) not null comment '文件ID',
|
||
file_name varchar(255) null comment '文件名称',
|
||
content_type varchar(255) null comment '文件类型',
|
||
signature varchar(255) null comment '文件签名',
|
||
create_time datetime default CURRENT_TIMESTAMP not null comment '创建时间',
|
||
file_size bigint null comment '文件大小',
|
||
constraint uniq_file_records_file_id
|
||
unique (file_id)
|
||
)
|
||
comment '文件记录';
|
||
|
||
create table gateway_bound_info
|
||
(
|
||
id bigint auto_increment comment '主键'
|
||
primary key,
|
||
gateway_sn varchar(150) not null comment '网关 sn',
|
||
drone_sn varchar(150) not null comment '无人机 sn',
|
||
constraint uniq_gateway_bound_info_pk
|
||
unique (drone_sn, gateway_sn)
|
||
)
|
||
comment '无人机设备绑定关系';
|
||
|
||
create index gateway_bound_info_gateway_sn_index
|
||
on gateway_bound_info (gateway_sn);
|
||
|
||
create table gateway_info
|
||
(
|
||
id bigint auto_increment comment '主键'
|
||
primary key,
|
||
sn varchar(150) not null comment '网关 sn',
|
||
type varchar(30) not null comment '类型',
|
||
form int null comment '形态',
|
||
model varchar(50) null comment '型号',
|
||
name varchar(100) null comment '网关名称',
|
||
version varchar(20) null comment '版本',
|
||
stream_url varchar(255) null comment '推流地址[list]',
|
||
constraint gateway_info_pk_2
|
||
unique (sn)
|
||
)
|
||
comment '网关设备信息';
|
||
|
||
create table storage_files
|
||
(
|
||
id bigint auto_increment comment '文件ID'
|
||
primary key,
|
||
file_id char(36) not null comment '文件唯一标识',
|
||
bucket varchar(64) not null comment 'OSS存储桶',
|
||
object_path varchar(500) not null comment 'OSS对象路径',
|
||
drone_sn char(32) null comment '无人机序列号',
|
||
name varchar(255) not null comment '文件名称',
|
||
type varchar(20) null comment '文件类型',
|
||
size bigint unsigned default '0' null comment '文件大小(字节)',
|
||
md5 char(32) null comment 'MD5哈希值',
|
||
create_time datetime default CURRENT_TIMESTAMP not null comment '创建时间',
|
||
extra text null comment '额外信息',
|
||
constraint uk_file_id
|
||
unique (file_id)
|
||
)
|
||
comment '文件存储表' collate = utf8mb4_unicode_ci;
|
||
|
||
create index idx_drone_sn
|
||
on storage_files (drone_sn);
|
||
|
||
create index idx_object_path
|
||
on storage_files (object_path(191));
|
||
|
||
create table track_order
|
||
(
|
||
track_id varchar(255) not null comment '轨迹id'
|
||
primary key,
|
||
drone_sn varchar(255) not null comment '无人机id',
|
||
gateway_sn varchar(255) not null comment '网关序列号',
|
||
first_track_time datetime not null comment '轨迹开始时间',
|
||
last_track_time datetime not null comment '轨迹结束时间',
|
||
distance bigint not null comment '轨迹距离,单位 m',
|
||
duration bigint not null comment '轨迹中时长,单位 s',
|
||
first_latitude double not null comment '轨迹开始纬度',
|
||
first_longitude double not null comment '轨迹开始经度',
|
||
last_latitude double not null comment '轨迹结束纬度',
|
||
last_longitude double not null comment '轨迹结束经度',
|
||
gateway_type varchar(255) null comment '网关类型'
|
||
)
|
||
comment '无人机轨迹记录表';
|
||
|
||
create table wayline_info
|
||
(
|
||
id bigint auto_increment comment '主键 ID'
|
||
primary key,
|
||
created_at datetime default CURRENT_TIMESTAMP not null comment '创建时间',
|
||
file_name varchar(255) not null comment '航线内容文件名称',
|
||
file_path varchar(255) not null comment '文件在 OSS 的路径',
|
||
file_md5 varchar(64) null comment '文件md5',
|
||
content mediumtext not null comment 'JSON 格式的航线内容',
|
||
drone_model varchar(255) null comment '无人机型号',
|
||
payloads varchar(255) null comment '载荷型号列表',
|
||
deleted int default 0 not null comment '是否删除,0 为未删除,1 为已删除'
|
||
)
|
||
comment '航线信息';
|
||
|
||
alter table wayline_info
|
||
modify content mediumtext not null comment 'JSON 格式的航线内容';
|
||
|
||
ALTER TABLE storage_files
|
||
ADD COLUMN pilot_photo_fingerprint VARCHAR(255) NULL DEFAULT NULL COMMENT 'pilot2上传的照片标识';
|
||
|
||
ALTER TABLE `wayline_info` ADD INDEX `idx_file_path` (`file_path`); |