-- 政务AI应用平台 种子数据
-- Run after applying all migrations: psql -d govai -f seed.sql

-- 默认管理员用户 (password: [REDACTED]
INSERT INTO users (id, name, email, password_hash, role, status) VALUES
  ('00000000-0000-0000-0000-000000000001', '系统管理员', 'admin@govai.gov.cn',
   '$2a$10$M1zrf3BCZVQG2zmuqIyQN.rkMTeF5Q7u3f2prayJ3KLSyH.F5G8za',
   'super_admin', 'active'),
  ('00000000-0000-0000-0000-000000000002', '王科长', 'wangke@govai.gov.cn',
   '$2a$10$M1zrf3BCZVQG2zmuqIyQN.rkMTeF5Q7u3f2prayJ3KLSyH.F5G8za',
   'creator', 'active'),
  ('00000000-0000-0000-0000-000000000003', '李干事', 'liganshi@govai.gov.cn',
   '$2a$10$M1zrf3BCZVQG2zmuqIyQN.rkMTeF5Q7u3f2prayJ3KLSyH.F5G8za',
   'user', 'active')
ON CONFLICT (id) DO NOTHING;

-- ========== Chatbot 对话型应用（3个）==========
INSERT INTO applications (id, name, slug, description, long_description, icon_url, category_id, creator_id, status, visibility, dify_app_type, dify_api_key, welcome_message, suggested_prompts, app_config) VALUES
  ('10000000-0000-0000-0000-000000000001', '政策法规问答', 'policy-qa-bot',
   '根据政策文件库进行多轮问答，精准解答法规条款和政策要点',
   '## 功能介绍\n\n政策法规智能问答系统，基于最新政策文件库为您提供精准解答：\n\n- 法律法规条款查询与解读\n- 最新政策变动解析\n- 政策适用范围说明\n- 相关案例参考\n\n## 使用方法\n\n直接输入您的政策法规相关问题即可获得专业解答。',
   '📜',
   (SELECT id FROM categories WHERE slug = 'policy-qa' LIMIT 1),
   '00000000-0000-0000-0000-000000000001',
   'approved', 'public', 'chatbot', 'app-placeholder',
   '您好！我是政策法规智能问答助手。您可以向我咨询各类法律法规和政策条款，我将为您精准解答。',
   '["最新的行政处罚法有哪些变化？","营商环境优化相关政策有哪些？","政府信息公开条例的适用范围？"]',
   '{"system_prompt":"你是一个政策法规智能问答助手，熟悉中国各级政府的法律法规和政策文件。请准确、严谨地回答用户的政策法规相关问题，必要时引用相关法条。回答应正式、专业。"}'),

  ('10000000-0000-0000-0000-000000000002', '公文写作助手', 'official-doc-writer',
   '辅助拟稿各类公文，确保格式规范、行文得体',
   '## 功能介绍\n\n公文写作智能助手，帮助您高效完成各类公文拟稿：\n\n- 通知、通报、报告拟稿\n- 请示、批复格式生成\n- 会议纪要整理\n- 公文格式规范检查\n\n## 使用方法\n\n描述您需要的公文类型和主要内容，助手将按照《党政机关公文格式》标准为您生成。',
   '📝',
   (SELECT id FROM categories WHERE slug = 'official-writing' LIMIT 1),
   '00000000-0000-0000-0000-000000000002',
   'approved', 'public', 'chatbot', 'app-placeholder',
   '您好！我是公文写作助手。我可以帮您拟稿各类公文，包括通知、报告、请示、批复等，并确保格式符合《党政机关公文格式》标准。请告诉我您需要什么？',
   '["帮我起草一份工作通知","拟一份关于年度总结的报告","写一份请示文件"]',
   '{"system_prompt":"你是一个专业的公文写作助手，精通《党政机关公文格式》国家标准（GB/T 9704）。请按照规范格式帮助用户拟稿各类公文。行文应庄重、严谨、准确，符合政务公文写作规范。"}'),

  ('10000000-0000-0000-0000-000000000003', '群众来信回复', 'public-reply',
   '辅助处理群众诉求，生成专业规范的回复建议',
   '## 功能介绍\n\n群众来信回复助手，帮助高效处理各类群众诉求：\n\n- 12345热线来电回复\n- 信访来信处理建议\n- 网上投诉回复生成\n- 政策解释口径统一\n\n## 使用方法\n\n将群众诉求内容发送给我，我将帮您生成专业、规范的回复建议。',
   '💬',
   (SELECT id FROM categories WHERE slug = 'public-service' LIMIT 1),
   '00000000-0000-0000-0000-000000000002',
   'approved', 'public', 'chatbot', 'app-placeholder',
   '您好！我是群众来信回复助手。请将群众诉求内容发送给我，我将帮您生成专业、规范的回复建议。',
   '["这封投诉信应该如何回复？","群众反映道路损坏如何答复？","帮我生成一封信访回复"]',
   '{"system_prompt":"你是一个政务信访回复助手。请根据群众诉求内容，生成专业、温和、规范的回复建议。回复应体现以人民为中心的服务理念，用词恰当、态度诚恳，引导群众通过正当渠道解决问题。"}')
ON CONFLICT (id) DO NOTHING;

-- ========== Completion 补全型应用（3个）==========
INSERT INTO applications (id, name, slug, description, long_description, icon_url, category_id, creator_id, status, visibility, dify_app_type, dify_api_key, welcome_message, app_config) VALUES
  ('10000000-0000-0000-0000-000000000004', '会议纪要生成', 'meeting-minutes',
   '输入会议记录，一键生成标准格式会议纪要',
   '## 功能介绍\n\n会议纪要智能生成器，快速整理会议记录：\n\n- 自动提取关键议题和决议\n- 标注责任人和完成时限\n- 输出标准政务会议纪要格式\n- 支持语音转写文字处理\n\n## 使用方法\n\n将会议记录或要点粘贴到输入框，点击生成即可。',
   '📋',
   (SELECT id FROM categories WHERE slug = 'official-writing' LIMIT 1),
   '00000000-0000-0000-0000-000000000001',
   'approved', 'public', 'completion', 'app-placeholder',
   NULL,
   '{"system_prompt":"你是一个政务会议纪要撰写专家。请根据提供的会议内容，生成标准格式的会议纪要，包含：会议主题、时间地点、主持人、参会人员、议题讨论要点、决议事项、落实责任人和完成时限。使用Markdown格式，行文正式规范。","input_placeholder":"请粘贴会议记录、发言要点或语音转写文字...","input_label":"会议内容","output_label":"会议纪要"}'),

  ('10000000-0000-0000-0000-000000000005', '公文摘要提取', 'doc-abstract',
   '对长篇政策文件、调研报告进行智能摘要',
   '## 功能介绍\n\n公文摘要智能提取，快速掌握文件核心：\n\n- 一句话概要提炼\n- 核心要点提取（3-5条）\n- 关键数据摘录\n- 政策影响概述\n\n## 使用方法\n\n将需要摘要的文件内容粘贴到输入框，点击生成即可。',
   '📑',
   (SELECT id FROM categories WHERE slug = 'official-writing' LIMIT 1),
   '00000000-0000-0000-0000-000000000002',
   'approved', 'public', 'completion', 'app-placeholder',
   NULL,
   '{"system_prompt":"你是一个政务文件分析专家。请对提供的文件进行分析，输出包含：一句话概要（50字内）、核心要点（3-5条）、关键数据摘录、政策影响分析、行动建议。使用Markdown格式，措辞严谨正式。","input_placeholder":"粘贴需要提取摘要的文件内容...","input_label":"文件内容","output_label":"核心摘要"}'),

  ('10000000-0000-0000-0000-000000000006', '翻译助手', 'gov-translator',
   '中英互译，精准处理政务专业术语和外事用语',
   '## 功能介绍\n\n政务翻译智能助手：\n\n- 中英双向翻译\n- 政务专业术语精准翻译\n- 外事用语规范表达\n- 保持原文正式语调\n\n## 使用方法\n\n输入需要翻译的文本即可获得翻译结果。',
   '🌐',
   (SELECT id FROM categories WHERE slug = 'translation' LIMIT 1),
   '00000000-0000-0000-0000-000000000001',
   'approved', 'public', 'completion', 'app-placeholder',
   NULL,
   '{"system_prompt":"你是一个精通中英双向翻译的政务翻译专家。请准确翻译用户输入的文本，特别注意政务专业术语的准确性，如\"放管服改革\"→\"streamlining administration, delegating power, and improving regulation and services\"、\"一带一路\"→\"Belt and Road Initiative\"等。保持原文的正式语调。","input_placeholder":"输入需要翻译的文本...","input_label":"原文","output_label":"翻译结果"}')
ON CONFLICT (id) DO NOTHING;

-- ========== Workflow 工作流型应用（2个）==========
INSERT INTO applications (id, name, slug, description, long_description, icon_url, category_id, creator_id, status, visibility, dify_app_type, dify_api_key, welcome_message, app_config) VALUES
  ('10000000-0000-0000-0000-000000000007', '招商项目评估', 'investment-eval',
   '按步骤输入项目信息，多维度评估生成招商分析报告',
   '## 功能介绍\n\n招商项目智能评估系统，按流程引导完成项目分析：\n\n- **步骤1**：项目基本信息录入\n- **步骤2**：产业匹配度分析\n- **步骤3**：土地和环保要求\n- **步骤4**：选择报告类型\n\n系统将综合评估并生成专业分析报告。',
   '📊',
   (SELECT id FROM categories WHERE slug = 'investment' LIMIT 1),
   '00000000-0000-0000-0000-000000000001',
   'approved', 'public', 'workflow', 'app-placeholder',
   NULL,
   '{"system_prompt":"你是一个招商引资评估专家。请根据用户分步提供的项目信息，从产业匹配度、经济效益、社会效益、环保合规、风险等维度进行综合评估，生成专业的招商项目评估报告。使用Markdown格式，数据和结论要有理有据。","steps":[{"key":"project","label":"项目基本信息","description":"请输入项目名称、投资方、投资金额、所属行业","placeholder":"例如：XX科技产业园项目，投资方：XX集团，计划投资5亿元...","type":"textarea"},{"key":"match","label":"产业匹配度","description":"与本地产业规划的匹配程度","placeholder":"","type":"select","options":["高度匹配 — 属于本地重点发展产业","一般匹配 — 与本地产业有一定关联","需论证 — 属于新兴产业方向"]},{"key":"env","label":"土地和环保要求","description":"项目用地和环保相关信息","placeholder":"例如：需要工业用地200亩，年能耗约XX吨标准煤...","type":"textarea"},{"key":"format","label":"报告类型","description":"选择需要生成的报告类型","placeholder":"","type":"select","options":["初步评估报告","详细分析报告","可行性研究报告"]}]}'),

  ('10000000-0000-0000-0000-000000000008', '政策影响分析', 'policy-impact',
   '对拟出台政策进行多维度影响预评估',
   '## 功能介绍\n\n政策影响预评估系统，帮助决策者全面分析政策影响：\n\n- **步骤1**：政策内容概述\n- **步骤2**：影响群体识别\n- **步骤3**：选择评估维度\n\n系统将生成专业的政策影响分析报告。',
   '📈',
   (SELECT id FROM categories WHERE slug = 'policy-qa' LIMIT 1),
   '00000000-0000-0000-0000-000000000002',
   'approved', 'public', 'workflow', 'app-placeholder',
   NULL,
   '{"system_prompt":"你是一个政策分析专家。请根据用户分步提供的信息，从经济、社会、环境等维度分析政策可能产生的影响，评估政策利弊，提出优化建议。报告应严谨客观、数据支撑、有建设性。使用Markdown格式。","steps":[{"key":"policy","label":"政策内容概述","description":"请描述拟出台政策的主要内容和目标","placeholder":"例如：计划出台关于优化营商环境的若干措施，主要包括简化审批流程、降低企业税费负担...","type":"textarea"},{"key":"target","label":"影响群体","description":"该政策主要影响哪些群体","placeholder":"","type":"select","options":["企业（含中小微企业）","城镇居民","农村居民","特定行业从业者","全社会"]},{"key":"dimension","label":"评估维度","description":"选择重点评估的维度","placeholder":"","type":"select","options":["经济影响评估","社会影响评估","环境影响评估","综合评估（全维度）"]}]}')
ON CONFLICT (id) DO NOTHING;

-- ========== Agent 智能体型应用（2个）==========
INSERT INTO applications (id, name, slug, description, long_description, icon_url, category_id, creator_id, status, visibility, dify_app_type, dify_api_key, welcome_message, suggested_prompts, app_config) VALUES
  ('10000000-0000-0000-0000-000000000009', '综合研判助手', 'analysis-agent',
   '多工具联动的智能体，可调用数据检索、趋势分析、报告生成等能力',
   '## 功能介绍\n\n综合研判智能助手，集成多种分析能力：\n\n- 🔧 **数据检索**：快速检索相关数据和指标\n- 🔧 **趋势分析**：分析经济社会发展趋势\n- 🔧 **对比分析**：横向纵向对比各类指标\n- 🔧 **报告生成**：汇总分析生成研判报告\n\nAgent 将根据您的需求自动选择合适的工具。',
   '🔍',
   (SELECT id FROM categories WHERE slug = 'data-governance' LIMIT 1),
   '00000000-0000-0000-0000-000000000001',
   'approved', 'public', 'agent', 'app-placeholder',
   '您好！我是综合研判智能助手。我具备数据检索、趋势分析、对比分析和报告生成等能力。请描述您的分析需求。',
   '["分析近三年本地GDP增长趋势","对比各区县经济指标","生成季度经济运行分析报告"]',
   '{"system_prompt":"你是一个综合研判智能体，服务于政府部门的数据分析和决策支持。你具备以下工具能力：1.数据检索 2.趋势分析 3.对比分析 4.报告生成。在回复中，当你使用某个能力时，请用 [工具调用: 工具名] 和 [工具结果: 工具名] 标记。请给出严谨、专业的分析结论。","tools":["数据检索","趋势分析","对比分析","报告生成"]}'),

  ('10000000-0000-0000-0000-000000000010', '干部考核助手', 'hr-assessment',
   '智能化辅助干部年度考核：绩效分析、评语生成、报告汇总',
   '## 功能介绍\n\n干部考核智能助手，辅助完成干部管理工作：\n\n- 🔧 **绩效分析**：分析工作成果和完成情况\n- 🔧 **评语生成**：根据表现生成考核评语\n- 🔧 **排名建议**：综合评估提供排名参考\n- 🔧 **报告汇总**：生成科室/部门考核汇总报告\n\nAgent 将根据您的需求自动选择合适的工具。',
   '👤',
   (SELECT id FROM categories WHERE slug = 'hr-org' LIMIT 1),
   '00000000-0000-0000-0000-000000000002',
   'approved', 'public', 'agent', 'app-placeholder',
   '您好！我是干部考核智能助手。我可以帮您分析干部绩效、生成考核评语、提供排名建议。请告诉我您需要什么帮助？',
   '["根据以下工作成果生成干部考核评语","分析这位同志的年度绩效表现","生成科室年度考核汇总报告"]',
   '{"system_prompt":"你是一个组织人事领域的智能助手，服务于政府部门的干部管理工作。你具备以下工具能力：1.绩效分析 2.评语生成 3.排名建议 4.报告汇总。在回复中，当你使用某个能力时，请用 [工具调用: 工具名] 和 [工具结果: 工具名] 标记。评语和报告应客观公正、实事求是。","tools":["绩效分析","评语生成","排名建议","报告汇总"]}')
ON CONFLICT (id) DO NOTHING;

-- 设置已审核通过的应用发布时间
UPDATE applications SET published_at = NOW() WHERE status = 'approved' AND published_at IS NULL;

-- 添加收藏和评分数据
INSERT INTO app_favorites (user_id, app_id) VALUES
  ('00000000-0000-0000-0000-000000000003', '10000000-0000-0000-0000-000000000001'),
  ('00000000-0000-0000-0000-000000000003', '10000000-0000-0000-0000-000000000002')
ON CONFLICT DO NOTHING;

INSERT INTO app_ratings (user_id, app_id, score, comment) VALUES
  ('00000000-0000-0000-0000-000000000003', '10000000-0000-0000-0000-000000000001', 5, '政策查询非常方便'),
  ('00000000-0000-0000-0000-000000000002', '10000000-0000-0000-0000-000000000004', 4, '会议纪要生成效率很高'),
  ('00000000-0000-0000-0000-000000000003', '10000000-0000-0000-0000-000000000006', 5, '翻译质量很专业')
ON CONFLICT DO NOTHING;

-- 更新应用统计
UPDATE applications SET avg_rating = sub.avg_score, rating_count = sub.cnt
FROM (
  SELECT app_id, AVG(score)::numeric(3,2) as avg_score, COUNT(*) as cnt
  FROM app_ratings GROUP BY app_id
) sub
WHERE applications.id = sub.app_id;

UPDATE applications SET usage_count = 156 WHERE id = '10000000-0000-0000-0000-000000000001';
UPDATE applications SET usage_count = 128 WHERE id = '10000000-0000-0000-0000-000000000002';
UPDATE applications SET usage_count = 89  WHERE id = '10000000-0000-0000-0000-000000000003';
UPDATE applications SET usage_count = 95  WHERE id = '10000000-0000-0000-0000-000000000004';
UPDATE applications SET usage_count = 72  WHERE id = '10000000-0000-0000-0000-000000000005';
UPDATE applications SET usage_count = 63  WHERE id = '10000000-0000-0000-0000-000000000006';
UPDATE applications SET usage_count = 45  WHERE id = '10000000-0000-0000-0000-000000000007';
UPDATE applications SET usage_count = 38  WHERE id = '10000000-0000-0000-0000-000000000008';
UPDATE applications SET usage_count = 112 WHERE id = '10000000-0000-0000-0000-000000000009';
UPDATE applications SET usage_count = 67  WHERE id = '10000000-0000-0000-0000-000000000010';

-- 设置精选应用
UPDATE applications SET is_featured = true WHERE id IN (
  '10000000-0000-0000-0000-000000000001',
  '10000000-0000-0000-0000-000000000002',
  '10000000-0000-0000-0000-000000000004',
  '10000000-0000-0000-0000-000000000009'
);

-- 绑定基础应用和分类到科技局
UPDATE applications SET org_id = 'a0000000-0000-0000-0000-000000000001' WHERE org_id IS NULL;
UPDATE categories SET org_id = 'a0000000-0000-0000-0000-000000000001' WHERE org_id IS NULL;

SELECT '政务AI平台种子数据插入成功！' as status;
