package main import "go.mongodb.org/mongo-driver/bson" // SeedSpec 一个要播种的集合。Filter 为 nil 表示整表搬。 type SeedSpec struct { Name string Filter bson.M } // seedSpecs 是 91dj_video -> hgmj 的播种清单。 // // 只搬「内容」与「配置」,外加用户表的一个子集。刻意排除的几类: // - 交易与资产:transaction / wallet / recharge_order / product_history / // media_buy_record / pay_video_log / advance_order / backpack / video_coupon / // fund_transfer_log / withdraw_order // - 埋点与事件:vip_card_analytics_event(496万) / event(270万) / user_act / // operation_log / ip_block / user_watch_record(474万) // - IM 与 AI 生成内容:im_user(82万) / im_group / chat_message / ai_plaza(15.7万) / // ai_un_dress / ai_change_face / ai_change_face_img / ai_text_to_* / ai_image_to_video // - 用户行为与 UGC:comment(33.7万) / like(17.6万) / collect(9.8万) / // media_bookshelf(8万) / user_follow / user_checkin / invitation / user_feedback // - 运行时任务:task / export_task // // 排除它们的原因:用户表只搬 205 个 uid,这些按 uid 关联的表搬过去会产生大量 // 指向不存在用户的孤儿记录;埋点和事件是源站历史,对新站报表无意义。 var seedSpecs = []SeedSpec{ // ---- 内容 ---- {Name: "video_info"}, // 帖子与视频(newsType 区分 SP/COVER/SHORT/PIC/SEED_LINK) {Name: "section_video"}, // 模块下的视频编排 {Name: "section"}, // 模块/专题 {Name: "media"}, // 短剧主表 {Name: "media_content"}, // 剧集内容 {Name: "media_tag"}, // 短剧标签 {Name: "media_tag_dimension"}, // 标签维度 {Name: "tag"}, // 视频标签 {Name: "ai_change_face_video"}, // AI 换脸视频模版(模版属于内容,不是用户生成结果) // ---- 配置 ---- {Name: "sys_conf"}, // 系统通用配置 {Name: "module_conf"}, // 模块配置 {Name: "product"}, // 商品(会员卡) {Name: "product_benefit"}, // 商品权益 {Name: "product_position"}, // 商品位 {Name: "vip_card_experiment"}, // 会员卡 A/B 实验配置(源库有 5 条,会在新站生效) {Name: "currency"}, // 币种 {Name: "jingang"}, // 金刚区 {Name: "banner_jump"}, // Banner 跳转 {Name: "official_config"}, // 官方配置 {Name: "daily_task"}, // 每日任务 {Name: "once_task"}, // 一次性任务 {Name: "task_config"}, // 任务配置 {Name: "sign_task_config"}, // 签到任务配置 {Name: "checkin_config"}, // 签到配置 {Name: "checkin_prize"}, // 签到奖品 {Name: "integral_config"}, // 积分配置 {Name: "video_gold_coin_ser"}, // 金币视频配置 {Name: "activity_prize"}, // 活动奖品 {Name: "transaction_act"}, // 交易活动配置 {Name: "withdraw_channel"}, // 提现渠道 {Name: "withdraw_tariff"}, // 提现费率 {Name: "source"}, // 资源管理 {Name: "filter"}, // 敏感词 {Name: "reject_template"}, // 驳回模板 {Name: "location"}, // 地区 {Name: "announce"}, // 公告 {Name: "quick_search"}, // 快捷搜索 {Name: "ip_white"}, // IP 白名单(ip_block 是运行时封禁,不搬) {Name: "admin"}, // 后台账号 {Name: "authority"}, // 权限 {Name: "auto_id"}, // 自增序列:必须搬,否则新站发号可能与已搬内容的 ID 冲撞 // ---- 用户子集 ---- // uid 在源库只连续分配到 205,之后直接跳到 100 万以上, // 所以 <30000 实际就是这 205 个早期账号。 {Name: "user", Filter: bson.M{"uid": bson.M{"$lt": 30000}}}, }