iotsaas/sql/V15__add_device_activity_log.sql
2995840376 0ce191c448 chore: 初始化 iotsaas 版本库基线
纳入范围:
- 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
2026-10-27 12:00:41 +08:00

22 lines
1.6 KiB
SQL
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

-- 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 ='设备操控动态日志';