-- ===================================================================
-- 专题和评论系统演示数据
-- 基于PostgreSQL 15+
-- 用于测试和演示专题和评论功能
-- ===================================================================

-- ===================================================================
-- 1. 专题演示数据
-- ===================================================================

-- 插入演示专题
INSERT INTO public.ak_topics (
    id,
    title,
    description,
    topic_type,
    status,
    cover_image_url,
    creator_id,
    content_count,
    view_count,
    like_count,
    share_count,
    comment_count,
    meta_keywords,
    meta_description,
    seo_slug,
    priority_level,
    tags
) VALUES 
(
    'f47ac10b-58cc-4372-a567-0e02b2c3d479',
    'AI技术发展全景：从ChatGPT到未来',
    '深度解析人工智能技术的发展历程、现状和未来趋势，涵盖大语言模型、机器学习、深度学习等核心技术。本专题将带您全面了解AI技术的发展轨迹，探索人工智能对社会各个领域的深远影响。',
    'series',
    'featured',
    'https://example.com/images/ai-tech-cover.jpg',
    '550e8400-e29b-41d4-a716-446655440000',
    15,
    28500,
    256,
    89,
    42,
    '{"人工智能", "ChatGPT", "AI技术", "机器学习", "深度学习", "大语言模型"}',
    'AI技术发展专题：从基础概念到前沿应用，全面解析人工智能的发展历程和未来趋势',
    'ai-technology-development-guide',
    10,
    '{"AI", "技术", "专题", "教程"}'
),
(
    'f47ac10b-58cc-4372-a567-0e02b2c3d480',
    '2025年全球经济展望',
    '分析2025年全球经济形势，包括主要经济体发展趋势、通胀压力、货币政策、贸易关系等重要议题。专题聚焦经济复苏、产业转型、金融市场波动等热点话题。',
    'analysis',
    'active',
    'https://example.com/images/economy-2025-cover.jpg',
    '550e8400-e29b-41d4-a716-446655440001',
    8,
    15600,
    128,
    45,
    23,
    '{"全球经济", "经济展望", "2025", "通胀", "货币政策", "经济复苏"}',
    '2025年全球经济形势分析：通胀、复苏、政策调整全解读',
    'global-economy-outlook-2025',
    8,
    '{"经济", "分析", "2025", "全球"}'
),
(
    'f47ac10b-58cc-4372-a567-0e02b2c3d481',
    '气候变化应对策略追踪',
    '追踪全球气候变化应对策略的最新进展，包括各国减排政策、清洁能源发展、碳中和目标实施情况等。持续更新国际气候合作动态和创新技术突破。',
    'timeline',
    'active',
    'https://example.com/images/climate-action-cover.jpg',
    '550e8400-e29b-41d4-a716-446655440002',
    12,
    19200,
    186,
    67,
    31,
    '{"气候变化", "碳中和", "清洁能源", "减排政策", "环保"}',
    '气候变化应对策略实时追踪：政策进展、技术突破、国际合作',
    'climate-action-tracking',
    7,
    '{"气候", "环保", "政策", "追踪"}'
),
(
    'f47ac10b-58cc-4372-a567-0e02b2c3d482',
    '突发：全球芯片短缺危机',
    '追踪全球芯片短缺危机的最新发展，分析供应链中断、产业影响、各国应对措施等。实时更新半导体行业动态和市场变化。',
    'breaking',
    'featured',
    'https://example.com/images/chip-shortage-cover.jpg',
    '550e8400-e29b-41d4-a716-446655440003',
    6,
    32100,
    298,
    156,
    89,
    '{"芯片短缺", "半导体", "供应链", "科技产业", "突发事件"}',
    '全球芯片短缺危机最新进展：供应链中断、产业冲击、应对策略',
    'global-chip-shortage-crisis',
    15,
    '{"芯片", "突发", "科技", "供应链"}'
);

-- 插入专题内容关联（假设已有一些内容）
-- 注意：这些内容ID需要在实际数据库中存在
INSERT INTO public.ak_topic_contents (
    topic_id,
    content_id,
    display_order,
    editor_note,
    is_featured,
    added_by
) VALUES 
(
    'f47ac10b-58cc-4372-a567-0e02b2c3d479',
    '123e4567-e89b-12d3-a456-426614174000',
    1,
    'AI技术发展历史回顾，适合作为专题开篇',
    true,
    '550e8400-e29b-41d4-a716-446655440000'
),
(
    'f47ac10b-58cc-4372-a567-0e02b2c3d479',
    '123e4567-e89b-12d3-a456-426614174001',
    2,
    'ChatGPT技术原理深度解析',
    true,
    '550e8400-e29b-41d4-a716-446655440000'
),
(
    'f47ac10b-58cc-4372-a567-0e02b2c3d479',
    '123e4567-e89b-12d3-a456-426614174002',
    3,
    '机器学习算法基础教程',
    false,
    '550e8400-e29b-41d4-a716-446655440000'
);

-- 插入专题订阅数据
INSERT INTO public.ak_topic_subscriptions (
    topic_id,
    user_id,
    notification_enabled
) VALUES 
(
    'f47ac10b-58cc-4372-a567-0e02b2c3d479',
    '550e8400-e29b-41d4-a716-446655440010',
    true
),
(
    'f47ac10b-58cc-4372-a567-0e02b2c3d479',
    '550e8400-e29b-41d4-a716-446655440011',
    true
),
(
    'f47ac10b-58cc-4372-a567-0e02b2c3d480',
    '550e8400-e29b-41d4-a716-446655440010',
    false
);

-- ===================================================================
-- 2. 评论系统演示数据
-- ===================================================================

-- 插入内容评论数据
INSERT INTO public.ak_comments (
    id,
    target_type,
    target_id,
    parent_id,
    author_id,
    author_name,
    author_avatar,
    content,
    status,
    like_count,
    reply_count,
    quality_score,
    sentiment_score,
    language_detected,
    ip_address,
    user_agent
) VALUES 
-- 顶级评论1
(
    '11111111-1111-1111-1111-111111111111',
    'content',
    '123e4567-e89b-12d3-a456-426614174000',
    NULL,
    '550e8400-e29b-41d4-a716-446655440010',
    '科技爱好者小王',
    'https://example.com/avatar1.jpg',
    '这篇关于AI技术发展的文章写得非常深入浅出，特别是对ChatGPT工作原理的解释，让我这个非技术背景的人也能理解。期待看到更多关于AI伦理和社会影响的内容。',
    'active',
    15,
    2,
    0.85,
    0.7,
    'zh-CN',
    '192.168.1.100',
    'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36'
),
-- 对评论1的回复
(
    '22222222-2222-2222-2222-222222222222',
    'content',
    '123e4567-e89b-12d3-a456-426614174000',
    '11111111-1111-1111-1111-111111111111',
    '550e8400-e29b-41d4-a716-446655440011',
    'AI研究员张博士',
    'https://example.com/avatar2.jpg',
    '@科技爱好者小王 很高兴这篇文章对您有帮助！关于AI伦理的话题确实很重要，我们正在准备相关的专题内容，敬请期待。如果您有具体想了解的方面，欢迎留言告诉我们。',
    'active',
    8,
    1,
    0.92,
    0.8,
    'zh-CN',
    '10.0.0.15',
    'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36'
),
-- 对回复的再回复
(
    '33333333-3333-3333-3333-333333333333',
    'content',
    '123e4567-e89b-12d3-a456-426614174000',
    '22222222-2222-2222-2222-222222222222',
    '550e8400-e29b-41d4-a716-446655440010',
    '科技爱好者小王',
    'https://example.com/avatar1.jpg',
    '@AI研究员张博士 太好了！我特别关心AI在教育领域的应用和可能带来的教育公平问题，期待您的专题内容！',
    'active',
    3,
    0,
    0.78,
    0.6,
    'zh-CN',
    '192.168.1.100',
    'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36'
),
-- 另一个顶级评论
(
    '44444444-4444-4444-4444-444444444444',
    'content',
    '123e4567-e89b-12d3-a456-426614174000',
    NULL,
    '550e8400-e29b-41d4-a716-446655440012',
    '程序员小李',
    'https://example.com/avatar3.jpg',
    '作为一名AI工程师，我觉得这篇文章的技术细节还可以更深入一些。比如Transformer架构的attention机制部分，如果能配上更多的代码示例就更好了。不过总体来说还是很不错的科普文章。',
    'active',
    22,
    1,
    0.88,
    0.4,
    'zh-CN',
    '203.0.113.42',
    'Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36'
),
-- 对评论4的回复
(
    '55555555-5555-5555-5555-555555555555',
    'content',
    '123e4567-e89b-12d3-a456-426614174000',
    '44444444-4444-4444-4444-444444444444',
    '550e8400-e29b-41d4-a716-446655440013',
    '内容编辑小陈',
    'https://example.com/avatar4.jpg',
    '@程序员小李 感谢您的专业建议！我们正在考虑推出一个技术进阶系列，会包含更多代码示例和实战案例。您提到的Transformer架构确实值得单独开一个深度教程。',
    'active',
    6,
    0,
    0.81,
    0.5,
    'zh-CN',
    '172.16.0.8',
    'Mozilla/5.0 (iPhone; CPU iPhone OS 16_0 like Mac OS X) AppleWebKit/605.1.15'
);

-- 插入专题评论数据
INSERT INTO public.ak_comments (
    id,
    target_type,
    target_id,
    parent_id,
    author_id,
    author_name,
    author_avatar,
    content,
    status,
    like_count,
    reply_count,
    quality_score,
    sentiment_score,
    language_detected,
    ip_address,
    user_agent
) VALUES 
-- 专题评论1
(
    '66666666-6666-6666-6666-666666666666',
    'topic',
    'f47ac10b-58cc-4372-a567-0e02b2c3d479',
    NULL,
    '550e8400-e29b-41d4-a716-446655440014',
    'AI学习者小刘',
    'https://example.com/avatar5.jpg',
    '这个AI技术专题真的太棒了！从基础概念到前沿应用，内容覆盖得很全面。作为一个刚入门AI的新手，这个专题帮我建立了完整的知识框架。希望能继续更新更多实践案例。',
    'active',
    28,
    1,
    0.91,
    0.9,
    'zh-CN',
    '198.51.100.23',
    'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36'
),
-- 对专题评论的回复
(
    '77777777-7777-7777-7777-777777777777',
    'topic',
    'f47ac10b-58cc-4372-a567-0e02b2c3d479',
    '66666666-6666-6666-6666-666666666666',
    '550e8400-e29b-41d4-a716-446655440000',
    '专题编辑',
    'https://example.com/avatar6.jpg',
    '@AI学习者小刘 非常感谢您的反馈！我们会继续丰富这个专题的内容，下周计划发布几个AI实际应用的案例研究。也欢迎您在学习过程中提出问题和建议！',
    'active',
    12,
    0,
    0.87,
    0.8,
    'zh-CN',
    '10.0.0.20',
    'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36'
),
-- 另一个专题评论
(
    '88888888-8888-8888-8888-888888888888',
    'topic',
    'f47ac10b-58cc-4372-a567-0e02b2c3d480',
    NULL,
    '550e8400-e29b-41d4-a716-446655440015',
    '经济分析师老王',
    'https://example.com/avatar7.jpg',
    '2025年经济展望专题的分析很到位，特别是对通胀压力和货币政策的解读。不过我觉得对新兴市场的分析还可以更深入一些，比如印度、东南亚等地区的经济发展潜力。',
    'active',
    19,
    0,
    0.84,
    0.3,
    'zh-CN',
    '203.0.113.89',
    'Mozilla/5.0 (Android 12; Mobile; rv:68.0) Gecko/68.0 Firefox/68.0'
);

-- 插入评论点赞数据
INSERT INTO public.ak_comment_reactions (
    comment_id,
    user_id,
    reaction_type
) VALUES 
('11111111-1111-1111-1111-111111111111', '550e8400-e29b-41d4-a716-446655440011', 'like'),
('11111111-1111-1111-1111-111111111111', '550e8400-e29b-41d4-a716-446655440012', 'like'),
('11111111-1111-1111-1111-111111111111', '550e8400-e29b-41d4-a716-446655440013', 'like'),
('22222222-2222-2222-2222-222222222222', '550e8400-e29b-41d4-a716-446655440010', 'like'),
('22222222-2222-2222-2222-222222222222', '550e8400-e29b-41d4-a716-446655440012', 'like'),
('44444444-4444-4444-4444-444444444444', '550e8400-e29b-41d4-a716-446655440010', 'like'),
('44444444-4444-4444-4444-444444444444', '550e8400-e29b-41d4-a716-446655440011', 'like'),
('44444444-4444-4444-4444-444444444444', '550e8400-e29b-41d4-a716-446655440014', 'dislike'),
('66666666-6666-6666-6666-666666666666', '550e8400-e29b-41d4-a716-446655440010', 'like'),
('66666666-6666-6666-6666-666666666666', '550e8400-e29b-41d4-a716-446655440011', 'like'),
('66666666-6666-6666-6666-666666666666', '550e8400-e29b-41d4-a716-446655440012', 'like');

-- 插入评论举报数据
INSERT INTO public.ak_comment_reports (
    comment_id,
    reporter_id,
    report_type,
    report_reason,
    status
) VALUES 
(
    '44444444-4444-4444-4444-444444444444',
    '550e8400-e29b-41d4-a716-446655440015',
    'inappropriate',
    '评论中包含对技术水平的质疑，可能影响内容创作者的积极性',
    'reviewed'
),
(
    '88888888-8888-8888-8888-888888888888',
    '550e8400-e29b-41d4-a716-446655440016',
    'misinformation',
    '对经济数据的解读可能存在偏差，需要专业人士核实',
    'pending'
);

-- 插入审核队列数据
INSERT INTO public.ak_comment_moderation_queue (
    comment_id,
    reason,
    priority_level,
    ai_risk_score,
    ai_recommendations
) VALUES 
(
    '88888888-8888-8888-8888-888888888888',
    '用户举报可能包含误导信息',
    2,
    0.65,
    '{"risk_factors": ["economic_data_accuracy"], "recommended_action": "expert_review", "confidence": 0.75}'
);

-- ===================================================================
-- 3. 更新统计数据
-- ===================================================================

-- 由于我们手动插入了评论数据，需要手动更新一些统计字段
-- 在实际系统中，这些会通过触发器自动更新

-- 更新内容的评论统计
UPDATE public.ak_contents 
SET comment_count = (
    SELECT COUNT(*) 
    FROM public.ak_comments 
    WHERE target_type = 'content' 
    AND target_id = ak_contents.id 
    AND parent_id IS NULL
    AND status = 'active'
)
WHERE id IN (
    '123e4567-e89b-12d3-a456-426614174000',
    '123e4567-e89b-12d3-a456-426614174001',
    '123e4567-e89b-12d3-a456-426614174002'
);

-- 更新专题的评论统计
UPDATE public.ak_topics 
SET comment_count = (
    SELECT COUNT(*) 
    FROM public.ak_comments 
    WHERE target_type = 'topic' 
    AND target_id = ak_topics.id 
    AND parent_id IS NULL
    AND status = 'active'
);

-- 更新专题的订阅统计
UPDATE public.ak_topics 
SET subscriber_count = (
    SELECT COUNT(*) 
    FROM public.ak_topic_subscriptions 
    WHERE topic_id = ak_topics.id
);

-- ===================================================================
-- 4. 验证数据
-- ===================================================================

-- 显示插入的数据统计
DO $$
DECLARE
    topic_count INTEGER;
    comment_count INTEGER;
    reaction_count INTEGER;
    subscription_count INTEGER;
BEGIN
    SELECT COUNT(*) INTO topic_count FROM public.ak_topics;
    SELECT COUNT(*) INTO comment_count FROM public.ak_comments;
    SELECT COUNT(*) INTO reaction_count FROM public.ak_comment_reactions;
    SELECT COUNT(*) INTO subscription_count FROM public.ak_topic_subscriptions;
    
    RAISE NOTICE '===================================================================';
    RAISE NOTICE '演示数据插入完成！';
    RAISE NOTICE '===================================================================';
    RAISE NOTICE '专题数量: %', topic_count;
    RAISE NOTICE '评论数量: %', comment_count;
    RAISE NOTICE '评论反应数量: %', reaction_count;
    RAISE NOTICE '专题订阅数量: %', subscription_count;
    RAISE NOTICE '===================================================================';
    RAISE NOTICE '演示专题类型分布:';
    RAISE NOTICE '- 系列专题: AI技术发展全景';
    RAISE NOTICE '- 分析专题: 2025年全球经济展望';
    RAISE NOTICE '- 时间轴专题: 气候变化应对策略追踪';
    RAISE NOTICE '- 突发专题: 全球芯片短缺危机';
    RAISE NOTICE '===================================================================';
    RAISE NOTICE '评论系统特性演示:';
    RAISE NOTICE '- 多层级评论结构 (最多3层)';
    RAISE NOTICE '- 点赞和踩的反应系统';
    RAISE NOTICE '- 举报和审核机制';
    RAISE NOTICE '- 内容和专题评论支持';
    RAISE NOTICE '===================================================================';
END
$$;

-- 查询示例 - 显示专题评论层级结构
SELECT 
    c.id,
    c.level,
    c.thread_path,
    c.author_name,
    SUBSTR(c.content, 1, 50) || '...' as content_preview,
    c.like_count,
    c.reply_count,
    c.created_at
FROM public.ak_comments c
WHERE c.target_type = 'content' 
AND c.target_id = '123e4567-e89b-12d3-a456-426614174000'
ORDER BY c.thread_path;
