-- ---------------------------- -- Table structure for ai_mip_click -- ---------------------------- DROP TABLE IF EXISTS `ai_mip_click`; CREATE TABLE `ai_mip_click` ( `id` bigint NOT NULL AUTO_INCREMENT COMMENT '主键ID', `site_id` bigint NOT NULL COMMENT '关联站点ID(外键指向 ai_mip_site.id)', `site_url` varchar(512) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '网站URL(冗余字段,便于查询优化)', `click_time` datetime NOT NULL COMMENT '点击发生时间', `user_ip` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '用户IP地址', `user_agent` text CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL COMMENT '浏览器/设备信息', `referer_url` varchar(512) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '来源页面URL', `device_type` enum('mobile','pc','tablet') CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '设备类型', `click_count` int NULL DEFAULT 1 COMMENT '本次点击事件的计数(一般为1,可用于批量插入)', `is_valid` tinyint(1) NULL DEFAULT 1 COMMENT '是否有效点击(防刷)', `task_id` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT 'RPA任务ID(可选)', `operator` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '操作者(如自动系统)', `created_at` timestamp NULL DEFAULT CURRENT_TIMESTAMP COMMENT '记录创建时间', PRIMARY KEY (`id`) USING BTREE, INDEX `idx_site_id`(`site_id` ASC) USING BTREE, INDEX `idx_click_time`(`click_time` ASC) USING BTREE, INDEX `idx_site_url`(`site_url` ASC) USING BTREE, INDEX `idx_click_time_site`(`click_time` ASC, `site_id` ASC) USING BTREE, INDEX `idx_task_id`(`task_id` ASC) USING BTREE ) ENGINE = InnoDB AUTO_INCREMENT = 2 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci COMMENT = 'MIP页广告点击日志表' ROW_FORMAT = Dynamic; -- ---------------------------- -- Table structure for ai_mip_interaction -- ---------------------------- DROP TABLE IF EXISTS `ai_mip_interaction`; CREATE TABLE `ai_mip_interaction` ( `id` bigint NOT NULL AUTO_INCREMENT COMMENT '主键ID', `site_id` bigint NOT NULL COMMENT '关联站点ID', `click_id` bigint NULL DEFAULT NULL COMMENT '关联点击记录ID', `task_id` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT 'RPA任务ID', `interaction_type` enum('reply','comment','message','form_submit','follow','like','share') CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '互动类型', `interaction_time` datetime NOT NULL COMMENT '互动发生时间', `interaction_status` enum('pending','success','failed','skipped') CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT 'pending' COMMENT '互动状态', `reply_content` text CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL COMMENT '回复/评论的内容', `reply_template_id` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '使用的回复模板ID', `ad_element_xpath` varchar(512) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '广告元素的XPath定位', `ad_element_selector` varchar(512) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '广告元素的CSS选择器', `ad_text_content` text CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL COMMENT '广告的文本内容', `execution_mode` enum('auto','manual','semi_auto') CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT 'auto' COMMENT '执行方式', `rpa_script` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '使用的RPA脚本名称', `browser_type` enum('headless','headed','playwright','selenium') CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '浏览器类型', `anti_detection_method` json NULL COMMENT '万金油技术方案', `proxy_ip` varchar(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '使用的代理IP', `user_agent` text CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL COMMENT '使用的User-Agent', `custom_headers` json NULL COMMENT '自定义HTTP头', `fingerprint_id` varchar(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '浏览器指纹ID', `response_received` tinyint(1) NULL DEFAULT 0 COMMENT '是否收到回复', `response_content` text CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL COMMENT '对方回复的内容', `response_time` datetime NULL DEFAULT NULL COMMENT '收到回复的时间', `response_delay_seconds` int NULL DEFAULT NULL COMMENT '回复延迟(秒)', `is_successful` tinyint(1) NULL DEFAULT 0 COMMENT '是否成功互动', `error_message` text CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL COMMENT '失败原因/错误信息', `retry_count` int NULL DEFAULT 0 COMMENT '重试次数', `conversion_flag` tinyint(1) NULL DEFAULT 0 COMMENT '是否产生转化', `site_dimension` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '网址维度标签', `campaign_id` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '广告活动ID', `operator` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '操作者', `created_at` timestamp NULL DEFAULT CURRENT_TIMESTAMP COMMENT '记录创建时间', `updated_at` timestamp NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '记录更新时间', `remark` varchar(512) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '备注信息', PRIMARY KEY (`id`) USING BTREE, INDEX `idx_site_id`(`site_id` ASC) USING BTREE, INDEX `idx_click_id`(`click_id` ASC) USING BTREE, INDEX `idx_task_id`(`task_id` ASC) USING BTREE, INDEX `idx_interaction_time`(`interaction_time` ASC) USING BTREE, INDEX `idx_interaction_status`(`interaction_status` ASC) USING BTREE, INDEX `idx_composite`(`site_id` ASC, `interaction_time` ASC, `interaction_status` ASC) USING BTREE, INDEX `idx_response_received`(`response_received` ASC) USING BTREE, INDEX `idx_conversion`(`conversion_flag` ASC) USING BTREE ) ENGINE = InnoDB AUTO_INCREMENT = 2 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci COMMENT = 'MIP页广告互动回复日志表' ROW_FORMAT = DYNAMIC; -- ---------------------------- -- Table structure for ai_mip_site -- ---------------------------- DROP TABLE IF EXISTS `ai_mip_site`; CREATE TABLE `ai_mip_site` ( `id` bigint NOT NULL AUTO_INCREMENT COMMENT '主键ID', `site_url` varchar(512) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '网站URL,唯一', `site_name` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '网站名称(可选)', `status` enum('active','inactive','pending') CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT 'active' COMMENT '状态:激活/停用/待审核', `frequency` int NULL DEFAULT 1 COMMENT '频次(如每小时发几次)', `time_start` time NULL DEFAULT '00:00:00' COMMENT '开始时间(HH:MM:SS)', `time_end` time NULL DEFAULT '23:59:59' COMMENT '结束时间(HH:MM:SS)', `interval_minutes` int NULL DEFAULT 60 COMMENT '执行间隔(分钟)', `ad_feature` varchar(1024) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '广告特征描述(JSON格式,如:{\"color\":\"red\", \"position\":\"top\"})', `click_count` bigint NULL DEFAULT 0 COMMENT '累计点击次数', `reply_count` bigint NULL DEFAULT 0 COMMENT '累计回复次数', `site_dimension` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '网址维度标签(如:教育、医疗等)', `created_at` timestamp NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', `updated_at` timestamp NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间', `created_by` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '创建人', `updated_by` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '更新人', `remark` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '备注信息', PRIMARY KEY (`id`) USING BTREE, UNIQUE INDEX `site_url`(`site_url` ASC) USING BTREE, UNIQUE INDEX `idx_site_url`(`site_url`(191) ASC) USING BTREE, INDEX `idx_status`(`status` ASC) USING BTREE, INDEX `idx_created_at`(`created_at` ASC) USING BTREE ) ENGINE = InnoDB AUTO_INCREMENT = 3 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci COMMENT = 'MIP页广告网址管理表' ROW_FORMAT = Dynamic; -- ---------------------------- -- Table structure for ai_mip_task_log -- ---------------------------- DROP TABLE IF EXISTS `ai_mip_task_log`; CREATE TABLE `ai_mip_task_log` ( `id` bigint NOT NULL AUTO_INCREMENT COMMENT '主键ID', `task_id` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT 'RPA任务唯一ID', `site_id` bigint NOT NULL COMMENT '关联站点ID', `step_1_visit_time` datetime NULL DEFAULT NULL COMMENT '步骤1:访问网址时间', `step_1_status` enum('success','failed','skipped') CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '步骤1状态', `step_2_antibot_time` datetime NULL DEFAULT NULL COMMENT '步骤2:万金油技术方案执行时间', `step_2_status` enum('success','failed','skipped') CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '步骤2状态', `step_3_ad_detection_time` datetime NULL DEFAULT NULL COMMENT '步骤3:广告检测时间', `step_3_has_ad` tinyint(1) NULL DEFAULT NULL COMMENT '是否检测到广告', `step_3_ad_count` int NULL DEFAULT 0 COMMENT '检测到的广告数量', `step_4_click_time` datetime NULL DEFAULT NULL COMMENT '步骤4:点击广告时间', `step_4_status` enum('success','failed','skipped') CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '步骤4状态', `step_5_reply_time` datetime NULL DEFAULT NULL COMMENT '步骤5:获取回复时间', `step_5_status` enum('success','failed','skipped') CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '步骤5状态', `task_start_time` datetime NOT NULL COMMENT '任务开始时间', `task_end_time` datetime NULL DEFAULT NULL COMMENT '任务结束时间', `task_duration_seconds` int NULL DEFAULT NULL COMMENT '任务执行时长(秒)', `task_status` enum('running','completed','failed','timeout') CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT 'running' COMMENT '任务整体状态', `total_clicks` int NULL DEFAULT 0 COMMENT '本次任务总点击次数', `total_interactions` int NULL DEFAULT 0 COMMENT '本次任务总互动次数', `successful_interactions` int NULL DEFAULT 0 COMMENT '成功互动次数', `failed_interactions` int NULL DEFAULT 0 COMMENT '失败互动次数', `execution_mode` enum('auto','manual','scheduled') CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT 'auto' COMMENT '执行模式', `triggered_by` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '触发者(定时任务/手动触发/队列)', `error_log` text CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL COMMENT '错误日志', `created_at` timestamp NULL DEFAULT CURRENT_TIMESTAMP COMMENT '记录创建时间', `updated_at` timestamp NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '记录更新时间', PRIMARY KEY (`id`) USING BTREE, UNIQUE INDEX `task_id`(`task_id` ASC) USING BTREE, UNIQUE INDEX `uk_task_id`(`task_id` ASC) USING BTREE, INDEX `idx_site_id`(`site_id` ASC) USING BTREE, INDEX `idx_task_status`(`task_status` ASC) USING BTREE, INDEX `idx_start_time`(`task_start_time` ASC) USING BTREE ) ENGINE = InnoDB AUTO_INCREMENT = 2 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci COMMENT = 'RPA任务执行日志表' ROW_FORMAT = DYNAMIC;