DROP TABLE IF EXISTS audit_log; CREATE TABLE audit_log ( id BIGINT NOT NULL AUTO_INCREMENT, actor_user_id BIGINT DEFAULT NULL COMMENT '操作人用户ID', head VARCHAR(256) DEFAULT NULL COMMENT '操作标题(中文描述)', method VARCHAR(128) DEFAULT NULL COMMENT '动作类型(如ACTCODE_GENERATE)', api VARCHAR(256) DEFAULT NULL COMMENT 'API路径(类名#方法名)', param VARCHAR(2000) DEFAULT NULL COMMENT '入参JSON', result VARCHAR(500) DEFAULT NULL COMMENT '返回结果/异常', `before` TEXT DEFAULT NULL COMMENT '变更前数据', `after` TEXT DEFAULT NULL COMMENT '变更后数据', reason VARCHAR(512) DEFAULT NULL COMMENT '操作原因', ip VARCHAR(64) DEFAULT NULL COMMENT '请求IP', device_info VARCHAR(255) DEFAULT NULL COMMENT 'User-Agent/设备信息', ticket_no VARCHAR(64) DEFAULT NULL COMMENT '工单号', created_at DATETIME DEFAULT NULL COMMENT '创建时间', updated_at DATETIME DEFAULT NULL COMMENT '更新时间', PRIMARY KEY (id), KEY idx_actor_user_id (actor_user_id), KEY idx_created_at (created_at), KEY idx_method (method) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='审计日志';