纳入范围: - backend/ Spring Boot 多模块后端(iot-common/device/rule/data/alarm/auth) - frontend/admin/ Vue3 + Element Plus 管理后台 - Android/ 涂鸦原生 APP (com.xhai.iot) - backend/sql/ Flyway 风格迁移脚本(V2~V21) - docs/ 对接文档与设计文档 排除范围: - 构建产物: node_modules/ target/ build/ dist/ .gradle/ - 签名密钥: *.jks *.keystore (严禁入库) - 本机配置: Android/local.properties - 运行日志: logs/ *.log - AI 协作本地数据 .codebuddy/ 与第三方 demo tuya-demo/ .gitattributes 统一以 LF 存储, Windows 批处理保留 CRLF
22 lines
1.6 KiB
SQL
22 lines
1.6 KiB
SQL
-- V15: 设备操控动态日志
|
||
-- 记录 APP 快捷开关/通用面板/涂鸦原生面板/AI语音/场景执行/云端推送产生的设备操控与状态变化,
|
||
-- 用于 APP 首页"近期动态"展示与动态详情页。
|
||
-- 注意:不复用 operation_log(那是面向管理后台的 HTTP 审计日志,字段语义不同)。
|
||
|
||
CREATE TABLE IF NOT EXISTS device_activity_log (
|
||
id BIGINT NOT NULL COMMENT '主键(雪花ID)',
|
||
home_id BIGINT DEFAULT NULL COMMENT '家庭ID',
|
||
owner_id BIGINT DEFAULT NULL COMMENT '归属用户ID(member.id)',
|
||
device_id VARCHAR(64) NOT NULL COMMENT '设备ID',
|
||
device_name VARCHAR(128) DEFAULT NULL COMMENT '设备名称(冗余, 避免联表)',
|
||
action VARCHAR(32) NOT NULL COMMENT '动作: switch_on/switch_off/adjust/status_change/online/offline/scene',
|
||
action_desc VARCHAR(255) DEFAULT NULL COMMENT '动作描述(如: 打开 客厅灯)',
|
||
source VARCHAR(32) NOT NULL DEFAULT 'app' COMMENT '来源: app/panel/voice/scene/cloud_push',
|
||
operator_member_id BIGINT DEFAULT NULL COMMENT '操作人(云推送/设备自主上报时为空)',
|
||
detail TEXT COMMENT '明细(JSON, 如 DP变更 {"1":true})',
|
||
create_time DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
|
||
PRIMARY KEY (id),
|
||
KEY idx_home_time (home_id, create_time),
|
||
KEY idx_device_time (device_id, create_time)
|
||
) ENGINE = InnoDB DEFAULT CHARSET = utf8mb4 COLLATE = utf8mb4_unicode_ci COMMENT ='设备操控动态日志';
|