-- 公安局完整示例数据：应用中心
-- 可重复执行

-- 公安局 org_id
-- a0000000-0000-0000-0000-000000000002

-- 获取公安局创建者ID
DO $$
DECLARE
  creator_id UUID;
  gongan_org UUID := 'a0000000-0000-0000-0000-000000000002';
  cat_policy UUID;
  cat_writing UUID;
  cat_service UUID;
  cat_data UUID;
  cat_general UUID;
  cat_hr UUID;
BEGIN
  SELECT id INTO creator_id FROM users WHERE email = 'zhangdui@govai.gov.cn';
  SELECT id INTO cat_policy FROM categories WHERE slug = 'policy-qa';
  SELECT id INTO cat_writing FROM categories WHERE slug = 'official-writing';
  SELECT id INTO cat_service FROM categories WHERE slug = 'public-service';
  SELECT id INTO cat_data FROM categories WHERE slug = 'data-governance';
  SELECT id INTO cat_general FROM categories WHERE slug = 'general';
  SELECT id INTO cat_hr FROM categories WHERE slug = 'hr-org';

  -- ========== 应用数据 ==========

  -- 1. 案件分析助手
  INSERT INTO applications (id, name, slug, description, long_description, icon_url, category_id, creator_id, org_id,
    dify_app_type, status, visibility, is_featured, usage_count, avg_rating, rating_count, version,
    app_config, welcome_message, suggested_prompts, published_at)
  VALUES (
    'b0000000-0000-0000-0000-000000000001',
    '案件分析助手', 'case-analysis',
    '智能分析案件线索，提供侦查思路和法律依据参考',
    '基于AI大模型的案件分析工具，可根据案件描述智能分析：\n- 案件性质判定\n- 相关法律条文匹配\n- 侦查方向建议\n- 类似案例参考\n- 证据链梳理建议',
    '🔍', cat_data, creator_id, gongan_org,
    'chatbot', 'approved', 'public', true, 328, 4.7, 45, '1.0',
    '{"system_prompt": "你是一位经验丰富的刑侦分析专家，熟悉中国刑法、治安管理处罚法等法律法规。请根据用户描述的案件信息，从案件定性、法律适用、侦查方向、证据收集等角度进行专业分析。注意：你的分析仅供参考，不构成法律意见。", "model": "qwen-plus", "temperature": 0.4, "max_tokens": 4000}',
    '您好，我是案件分析助手。请描述案件基本情况，我将为您提供分析思路。',
    '["一起入室盗窃案，现场有脚印和指纹，嫌疑人可能是惯犯", "网络诈骗案，受害人通过虚假投资平台被骗50万", "交通肇事逃逸案，有行车记录仪画面但车牌模糊"]',
    NOW()
  ) ON CONFLICT (id) DO NOTHING;

  -- 2. 警情报告生成器
  INSERT INTO applications (id, name, slug, description, long_description, icon_url, category_id, creator_id, org_id,
    dify_app_type, status, visibility, is_featured, usage_count, avg_rating, rating_count, version,
    app_config, welcome_message, published_at)
  VALUES (
    'b0000000-0000-0000-0000-000000000002',
    '警情报告生成器', 'police-report-writer',
    '快速生成规范的警情报告、出警记录、工作汇报',
    '根据输入的警情要素，自动生成符合公安系统规范的各类文书：\n- 接处警记录\n- 案件受理报告\n- 巡逻工作日志\n- 专项行动总结\n- 治安形势分析报告',
    '📋', cat_writing, creator_id, gongan_org,
    'workflow', 'approved', 'public', true, 512, 4.8, 67, '1.0',
    '{"system_prompt": "你是公安系统公文写作专家，熟悉公安机关各类文书格式和规范用语。请根据用户提供的信息，生成规范、准确、专业的警务文书。", "model": "qwen-plus", "temperature": 0.3, "max_tokens": 6000, "app_type": "workflow", "steps": [{"key": "report_type", "label": "报告类型", "type": "select", "options": ["接处警记录", "案件受理报告", "巡逻工作日志", "专项行动总结", "治安形势分析"], "required": true}, {"key": "time_place", "label": "时间地点", "type": "text", "placeholder": "如：2024年3月15日14时30分，XX路XX号", "required": true}, {"key": "parties", "label": "涉及人员", "type": "textarea", "placeholder": "当事人、嫌疑人、证人等信息"}, {"key": "details", "label": "事件经过", "type": "textarea", "placeholder": "详细描述事件经过、处置措施等", "required": true}, {"key": "result", "label": "处理结果", "type": "textarea", "placeholder": "处置结果、后续措施等"}]}',
    '请选择报告类型并填写相关信息，我将为您生成规范的警务文书。',
    NOW()
  ) ON CONFLICT (id) DO NOTHING;

  -- 3. 法律法规智能问答
  INSERT INTO applications (id, name, slug, description, long_description, icon_url, category_id, creator_id, org_id,
    dify_app_type, status, visibility, is_featured, usage_count, avg_rating, rating_count, version,
    app_config, welcome_message, suggested_prompts, published_at)
  VALUES (
    'b0000000-0000-0000-0000-000000000003',
    '法律法规智能问答', 'law-qa-bot',
    '快速查询刑法、治安管理处罚法等法律条文及适用解释',
    '涵盖公安执法常用法律法规：\n- 中华人民共和国刑法\n- 治安管理处罚法\n- 道路交通安全法\n- 出入境管理法\n- 反电信网络诈骗法\n- 网络安全法\n- 相关司法解释',
    '⚖️', cat_policy, creator_id, gongan_org,
    'chatbot', 'approved', 'public', true, 890, 4.9, 102, '1.0',
    '{"system_prompt": "你是一位精通中国法律的法律顾问，特别熟悉公安机关执法相关的法律法规。请根据用户的问题，准确引用法律条文，并给出通俗易懂的解释。如果涉及复杂的法律问题，请建议咨询专业律师。", "model": "qwen-plus", "temperature": 0.2, "max_tokens": 3000}',
    '您好，我是法律法规智能问答系统。请输入您想了解的法律问题。',
    '["醉驾的法律后果和量刑标准是什么？", "盗窃罪的立案标准是多少？各地有区别吗？", "治安调解适用于哪些情况？调解不成怎么办？", "网络造谣传谣如何定性？需要承担什么法律责任？"]',
    NOW()
  ) ON CONFLICT (id) DO NOTHING;

  -- 4. 反诈宣传内容生成
  INSERT INTO applications (id, name, slug, description, long_description, icon_url, category_id, creator_id, org_id,
    dify_app_type, status, visibility, is_featured, usage_count, avg_rating, rating_count, version,
    app_config, welcome_message, suggested_prompts, published_at)
  VALUES (
    'b0000000-0000-0000-0000-000000000004',
    '反诈宣传内容生成', 'anti-fraud-content',
    '生成反电信诈骗宣传文案、短视频脚本、社区横幅标语',
    '为反诈宣传工作提供创意内容：\n- 社区宣传单页文案\n- 朋友圈/公众号推文\n- 短视频脚本\n- 横幅标语\n- 案例警示教育材料',
    '🛡️', cat_general, creator_id, gongan_org,
    'chatbot', 'approved', 'public', false, 156, 4.5, 23, '1.0',
    '{"system_prompt": "你是反电信诈骗宣传专家，善于用通俗易懂、生动有趣的方式编写反诈宣传材料。请根据用户需求生成相应的宣传内容。注意内容要贴近群众生活，易于传播。", "model": "qwen-plus", "temperature": 0.7, "max_tokens": 3000}',
    '需要什么类型的反诈宣传内容？我来帮您创作。',
    '["写一段针对老年人的刷单诈骗预防宣传文案", "生成一个反杀猪盘诈骗的短视频脚本，2分钟以内", "设计10条社区反诈横幅标语，要求朗朗上口"]',
    NOW()
  ) ON CONFLICT (id) DO NOTHING;

  -- 5. 户籍业务办理指南
  INSERT INTO applications (id, name, slug, description, long_description, icon_url, category_id, creator_id, org_id,
    dify_app_type, status, visibility, is_featured, usage_count, avg_rating, rating_count, version,
    app_config, welcome_message, suggested_prompts, published_at)
  VALUES (
    'b0000000-0000-0000-0000-000000000005',
    '户籍业务办理指南', 'huji-guide',
    '户口迁移、身份证办理、居住证等户籍业务智能咨询',
    '覆盖常见户籍业务：\n- 户口迁入迁出\n- 身份证首次办理/换领/补领\n- 居住证办理\n- 户口本补办\n- 新生儿入户\n- 集体户口管理',
    '🏠', cat_service, creator_id, gongan_org,
    'chatbot', 'approved', 'public', true, 1203, 4.6, 89, '1.0',
    '{"system_prompt": "你是户籍业务窗口智能客服，熟悉各类户籍业务的办理流程、所需材料和注意事项。请耐心解答群众关于户籍业务的疑问，提供准确的办理指南。如有地区差异请提醒用户确认当地政策。", "model": "qwen-plus", "temperature": 0.3, "max_tokens": 2000}',
    '您好！请问需要咨询什么户籍业务？',
    '["跨省户口迁移需要什么材料和流程？", "身份证过期了怎么换领？可以异地办理吗？", "新生儿上户口需要哪些材料？有时间限制吗？", "居住证办理条件是什么？多久能拿到？"]',
    NOW()
  ) ON CONFLICT (id) DO NOTHING;

  -- 6. 交通事故责任判定
  INSERT INTO applications (id, name, slug, description, long_description, icon_url, category_id, creator_id, org_id,
    dify_app_type, status, visibility, is_featured, usage_count, avg_rating, rating_count, version,
    app_config, welcome_message, suggested_prompts, published_at)
  VALUES (
    'b0000000-0000-0000-0000-000000000006',
    '交通事故责任判定', 'traffic-accident',
    '根据事故情况分析责任划分，提供处理流程指导',
    '交通事故处理辅助工具：\n- 事故责任初步判定\n- 处理流程指导\n- 赔偿标准参考\n- 保险理赔指引\n- 相关法条引用',
    '🚗', cat_service, creator_id, gongan_org,
    'chatbot', 'approved', 'public', false, 267, 4.4, 34, '1.0',
    '{"system_prompt": "你是交通事故处理专家，熟悉道路交通安全法及相关规定。请根据用户描述的事故情况，分析可能的责任划分，并提供处理建议。注意：分析仅供参考，正式责任认定以交警部门出具的事故认定书为准。", "model": "qwen-plus", "temperature": 0.3, "max_tokens": 3000}',
    '请描述交通事故的具体情况，我来帮您分析。',
    '["十字路口追尾，前车突然急刹车", "变道时与直行车辆发生刮擦", "非机动车闯红灯被机动车撞到", "停车场内倒车时碰到后方车辆"]',
    NOW()
  ) ON CONFLICT (id) DO NOTHING;

  -- 7. 值班排班助手
  INSERT INTO applications (id, name, slug, description, long_description, icon_url, category_id, creator_id, org_id,
    dify_app_type, status, visibility, is_featured, usage_count, avg_rating, rating_count, version,
    app_config, welcome_message, suggested_prompts, published_at)
  VALUES (
    'b0000000-0000-0000-0000-000000000007',
    '值班排班助手', 'duty-scheduler',
    '智能生成值班表、排班方案，兼顾公平性和业务需求',
    '公安值班排班智能助手：\n- 自动生成月度值班表\n- 兼顾节假日和特殊勤务\n- 考虑人员休假和调班\n- 确保关键岗位24小时覆盖',
    '📅', cat_hr, creator_id, gongan_org,
    'workflow', 'approved', 'public', false, 98, 4.3, 12, '1.0',
    '{"system_prompt": "你是排班管理专家，请根据人员名单和排班要求，生成合理的值班排班表。注意确保：1.每人工作量基本均衡 2.关键岗位不空缺 3.符合劳动法规定 4.兼顾节假日值班补偿。", "model": "qwen-plus", "temperature": 0.3, "max_tokens": 4000, "app_type": "workflow", "steps": [{"key": "personnel", "label": "人员名单", "type": "textarea", "placeholder": "请输入参与排班的人员名单，每行一人", "required": true}, {"key": "period", "label": "排班周期", "type": "text", "placeholder": "如：2024年4月", "required": true}, {"key": "shifts", "label": "班次设置", "type": "textarea", "placeholder": "如：白班(8:00-16:00)、中班(16:00-24:00)、夜班(0:00-8:00)", "required": true}, {"key": "rules", "label": "特殊规则", "type": "textarea", "placeholder": "如：张三4月5日请假、节假日双人值班等"}]}',
    '请填写排班信息，我将为您生成合理的值班方案。',
    NULL,
    NOW()
  ) ON CONFLICT (id) DO NOTHING;

  -- 8. 治安形势分析
  INSERT INTO applications (id, name, slug, description, long_description, icon_url, category_id, creator_id, org_id,
    dify_app_type, status, visibility, is_featured, usage_count, avg_rating, rating_count, version,
    app_config, welcome_message, suggested_prompts, published_at)
  VALUES (
    'b0000000-0000-0000-0000-000000000008',
    '治安形势分析报告', 'security-analysis',
    '根据警情数据生成辖区治安形势分析报告',
    '治安态势智能研判：\n- 警情数据趋势分析\n- 重点区域/时段识别\n- 案件类型分布统计\n- 防控建议生成\n- 同比环比对比',
    '📊', cat_data, creator_id, gongan_org,
    'workflow', 'approved', 'public', true, 187, 4.6, 28, '1.0',
    '{"system_prompt": "你是治安形势分析专家。请根据提供的警情数据和时间范围，撰写专业的治安形势分析报告，包括：数据概述、趋势分析、重点问题、原因分析、对策建议等部分。报告语言要规范专业。", "model": "qwen-plus", "temperature": 0.3, "max_tokens": 6000, "app_type": "workflow", "steps": [{"key": "area", "label": "辖区范围", "type": "text", "placeholder": "如：XX区/XX派出所辖区", "required": true}, {"key": "period", "label": "分析周期", "type": "text", "placeholder": "如：2024年第一季度", "required": true}, {"key": "data", "label": "警情数据", "type": "textarea", "placeholder": "请粘贴警情统计数据（案件类型、数量、时间分布等）", "required": true}, {"key": "focus", "label": "关注重点", "type": "textarea", "placeholder": "如：电信诈骗上升、夜间盗窃多发等"}]}',
    '请提供辖区警情数据，我将为您生成治安形势分析报告。',
    NULL,
    NOW()
  ) ON CONFLICT (id) DO NOTHING;

  -- 9. 出入境业务咨询
  INSERT INTO applications (id, name, slug, description, long_description, icon_url, category_id, creator_id, org_id,
    dify_app_type, status, visibility, is_featured, usage_count, avg_rating, rating_count, version,
    app_config, welcome_message, suggested_prompts, published_at)
  VALUES (
    'b0000000-0000-0000-0000-000000000009',
    '出入境业务咨询', 'exit-entry-service',
    '护照、签证、港澳通行证等出入境业务办理指南',
    '出入境证件办理全指南：\n- 普通护照办理/换发/补发\n- 港澳通行证及签注\n- 台湾通行证及签注\n- 外国人签证延期\n- 永久居留申请',
    '✈️', cat_service, creator_id, gongan_org,
    'chatbot', 'approved', 'public', false, 445, 4.5, 56, '1.0',
    '{"system_prompt": "你是出入境业务窗口智能客服，熟悉各类出入境证件的办理流程、所需材料、费用标准和办理时限。请耐心准确地解答群众咨询。如有最新政策变动，请提醒用户以窗口告知为准。", "model": "qwen-plus", "temperature": 0.3, "max_tokens": 2000}',
    '您好！请问需要咨询什么出入境业务？',
    '["首次办理护照需要什么材料？", "港澳通行证签注用完了怎么续签？", "护照快过期了，还能出国吗？什么时候换？", "外国人签证到期怎么延期？"]',
    NOW()
  ) ON CONFLICT (id) DO NOTHING;

  -- 10. 笔录模板助手
  INSERT INTO applications (id, name, slug, description, long_description, icon_url, category_id, creator_id, org_id,
    dify_app_type, status, visibility, is_featured, usage_count, avg_rating, rating_count, version,
    app_config, welcome_message, suggested_prompts, published_at)
  VALUES (
    'b0000000-0000-0000-0000-000000000010',
    '笔录模板助手', 'statement-template',
    '根据案件类型生成规范的询问/讯问笔录模板',
    '辅助民警制作规范笔录：\n- 询问笔录模板（证人、被害人）\n- 讯问笔录模板（嫌疑人）\n- 辨认笔录\n- 勘验笔录\n- 关键问题提示',
    '📝', cat_writing, creator_id, gongan_org,
    'chatbot', 'approved', 'public', false, 234, 4.7, 41, '1.0',
    '{"system_prompt": "你是公安法制部门的笔录审核专家，熟悉各类笔录的规范格式和必备要素。请根据案件类型和对象，生成规范的笔录模板，并标注关键问题要点和注意事项。", "model": "qwen-plus", "temperature": 0.2, "max_tokens": 4000}',
    '请告诉我案件类型和笔录对象，我来生成规范模板。',
    '["盗窃案被害人询问笔录模板", "故意伤害嫌疑人讯问笔录要点", "交通肇事案证人询问笔录", "电信诈骗案受害人报案笔录模板"]',
    NOW()
  ) ON CONFLICT (id) DO NOTHING;

END $$;
