-- 人员组表 CREATE TABLE IF NOT EXISTS sys_user_group ( id BIGINT AUTO_INCREMENT PRIMARY KEY COMMENT '主键ID', group_no VARCHAR(64) NOT NULL UNIQUE COMMENT '分组编号', group_name VARCHAR(100) NOT NULL COMMENT '分组名称', description VARCHAR(255) COMMENT '描述', create_time DATETIME DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', update_time DATETIME DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间' ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='人员分组表'; -- 人员表 CREATE TABLE IF NOT EXISTS sys_user ( id BIGINT AUTO_INCREMENT PRIMARY KEY COMMENT '主键ID', user_no VARCHAR(64) NOT NULL UNIQUE COMMENT '人员编号', name VARCHAR(100) NOT NULL COMMENT '姓名', group_id BIGINT COMMENT '所属分组ID', feature_data TEXT COMMENT '人脸特征数据(JSON或Base64)', photo_url VARCHAR(255) COMMENT '照片路径', status TINYINT DEFAULT 1 COMMENT '状态 1:正常 0:禁用', create_time DATETIME DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', update_time DATETIME DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间', FOREIGN KEY (group_id) REFERENCES sys_user_group(id) ON DELETE SET NULL ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='人员信息表'; -- 设备表 CREATE TABLE IF NOT EXISTS sys_device ( id BIGINT AUTO_INCREMENT PRIMARY KEY COMMENT '主键ID', device_sn VARCHAR(64) NOT NULL UNIQUE COMMENT '设备序列号', device_name VARCHAR(100) COMMENT '设备名称', ip_address VARCHAR(50) COMMENT 'IP地址', status TINYINT DEFAULT 1 COMMENT '状态 1:在线 0:离线', last_heartbeat DATETIME COMMENT '最后心跳时间', create_time DATETIME DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间' ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='设备管理表'; -- 识别记录表 CREATE TABLE IF NOT EXISTS sys_recognition_log ( id BIGINT AUTO_INCREMENT PRIMARY KEY COMMENT '主键ID', device_id BIGINT COMMENT '设备ID', user_id BIGINT COMMENT '识别到的人员ID', similarity FLOAT COMMENT '相似度', capture_photo VARCHAR(255) COMMENT '抓拍照片路径', create_time DATETIME DEFAULT CURRENT_TIMESTAMP COMMENT '识别时间' ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='识别记录表';