-- 创建访问日志表
CREATE TABLE IF NOT EXISTS `sys_access_log` (
  `id` bigint NOT NULL AUTO_INCREMENT COMMENT '日志ID',
  `tenant_id` bigint NOT NULL DEFAULT 0 COMMENT '租户ID',
  `user_id` bigint NOT NULL DEFAULT 0 COMMENT '用户ID',
  `username` varchar(64) DEFAULT '' COMMENT '用户名',
  `ip_address` varchar(50) DEFAULT '' COMMENT 'IP地址',
  `module` varchar(64) DEFAULT '' COMMENT '模块',
  `action` varchar(128) DEFAULT '' COMMENT '操作',
  `resource_type` varchar(64) DEFAULT '' COMMENT '资源类型',
  `resource_id` varchar(255) DEFAULT '' COMMENT '资源ID',
  `request_method` varchar(10) DEFAULT '' COMMENT '请求方法',
  `request_url` varchar(255) DEFAULT '' COMMENT '请求URL',
  `user_agent` varchar(255) DEFAULT '' COMMENT 'User Agent',
  `status_code` int DEFAULT 200 COMMENT '状态码',
  `response_time` bigint DEFAULT 0 COMMENT '响应时间（毫秒）',
  `description` longtext COMMENT '日志描述',
  `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  `create_by` varchar(64) DEFAULT '' COMMENT '创建人',
  `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
  `update_by` varchar(64) DEFAULT '' COMMENT '更新人',
  `delete_flag` tinyint DEFAULT 0 COMMENT '删除标记(0-正常,1-删除)',
  PRIMARY KEY (`id`),
  KEY `idx_tenant_id` (`tenant_id`),
  KEY `idx_user_id` (`user_id`),
  KEY `idx_create_time` (`create_time`),
  KEY `idx_username` (`username`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci COMMENT='系统访问日志表';
