0723 添加baodanppt项目

This commit is contained in:
wsb1224 2026-07-23 09:18:16 +08:00
parent c32efbaed9
commit 33b869e59d
295 changed files with 28232 additions and 0 deletions

49
baodanppt/.env.example Normal file
View File

@ -0,0 +1,49 @@
# ====================================================================
# insurance-ppt v3.1.3 配置文件示例
# ====================================================================
# 复制本文件为 .env 并填入你的 API keys.
# 大多数 LLM key 可在对应服务商控制台免费/付费获取.
# ====================================================================
# LLM Provider 选择 (按优先级顺序尝试)
# minimax - MiniMax M3 (推荐, 主力)
# deepseek - DeepSeek V3 Flash (备选)
# kimi - Kimi kimi-for-coding (备选, 配额可能耗尽)
# gemini - Gemini (备选)
# agnes - Agnes 2.0 Flash (慢但免费, 备用)
# openrouter - OpenRouter 路由 (备选)
LLM_PROVIDER=minimax
# --- 主选: MiniMax M3 ---
MINIMAX_API_KEY=<YOUR_MINIMAX_API_KEY_HERE>
MINIMAX_BASE_URL=https://api.minimax.chat/v1
MINIMAX_MODEL=MiniMax-M3
# --- 备选 1: DeepSeek ---
DEEPSEEK_API_KEY=<YOUR_DEEPSEEK_API_KEY_HERE>
DEEPSEEK_BASE_URL=https://api.deepseek.com/v1
DEEPSEEK_MODEL=deepseek-v3-flash
# --- 备选 2: Gemini ---
GEMINI_API_KEY=<YOUR_GEMINI_API_KEY_HERE>
# --- 备选 3: Kimi (kimi-for-coding) ---
KIMI_API_KEY=<YOUR_KIMI_API_KEY_HERE>
KIMI_BASE_URL=https://api.kimi.com/coding
KIMI_MODEL=kimi-for-coding
# --- 备选 4: OpenRouter ---
OPENROUTER_API_KEY=<YOUR_OPENROUTER_API_KEY_HERE>
OPENROUTER_BASE_URL=https://api.openrouter.ai/api/v1
OPENROUTER_MINIMAX_MODEL=minimax/minimax-m3
OPENROUTER_SITE_URL=http://localhost:3000
OPENROUTER_APP_NAME=insurance-ppt
# --- 备选 5: Agnes 2.0 Flash (免费, 慢) ---
AGNES_API_KEY=<YOUR_AGNES_API_KEY_HERE>
AGNES_BASE_URL=https://api.agines-ai.com/v1
AGNES_MODEL=agnes-2.0-flash
# --- API 访问保护 (可选) ---
# APP_API_KEY=<YOUR_APP_API_KEY_HERE>
# PORT=3000

31
baodanppt/.gitignore vendored Normal file
View File

@ -0,0 +1,31 @@
node_modules/
dist/
.env
*.log
*.pptx
*.mp4
*.mov
__pycache__/
*.pyc
# Generated / cache
sessions/
.cache/
uploads/
outputs/
protected/
public/downloads/
# Large temp
external/
temp/
tmp/
# IDE
.idea/
# OCR temp
.tess_tmp/
# Backup files
*.bak

105
baodanppt/README.md Normal file
View File

@ -0,0 +1,105 @@
# 保险计划书 AI 助手
将 PDF 计划书转换为专业 PPT 的 AI 工具支持储蓄险、重疾险、万用寿险IUL三种产品类型。
## 功能概览
- **上传 PDF** — 支持多份计划书同时上传,自动识别产品类型
- **AI 解析** — Gemini 2.5 Flash 提取关键数据(产品名称、保单信息、逐年利益演示)
- **销售洞察** — 自动生成目标客户画像、核心卖点、建议叙事方向
- **对话咨询** — 与 AI 保险顾问对话,询问计划书内容、对比分析、展示建议
- **PPT 生成** — 基于解析结果自动生成 15 页专业销售 PPT支持 4 种风格
## 快速开始
```bash
cd /Users/soldier/free-code/packages/insurance-ppt
bun install
```
### 环境变量
```bash
export GEMINI_API_KEY="your-gemini-api-key"
export PORT=3000
```
### 启动服务
```bash
bun run src/api/server.ts
```
打开 http://localhost:3000 即可使用。
## 项目结构
```
src/
api/server.ts # HTTP 服务器(路由、会话管理)
extraction/
orchestrator.ts # 提取编排器Schema 验证、多类型支持)
gemini-client.ts # Gemini API 客户端
pdf-preprocessor.ts # PDF 预处理器pymupdf 文本提取)
prompts.ts # 各产品的 Prompt 模板
schemas/
savings-plan.ts # 储蓄险 Schema + 验证
critical-illness.ts # 重疾险 Schema
iul.ts # IUL Schema
common.ts # 共享 Schema受保人、保单、年度利益行
chat/
chat-engine.ts # 对话引擎(支持三种产品类型)
interpretation-engine.ts # AI 解读引擎(计划书 JSON → 销售洞察)
outline-generator.ts # PPT 大纲生成器
templates/
markdown-templates.ts # Markdown 模板引擎
generation/
pptx-generator.ts # Python PPT 生成器(主)
composition-engine.ts # JS Fallback PPT 组合引擎
scripts/
ppt_generator.py # Gamma/Google Stitch 风格 PPT 生成
ppt_styles.py # 配色方案modern/fresh/minimal/warm
public/
index.html # Web UIApple 毛玻璃风格)
```
## API 端点
| 方法 | 路径 | 描述 | 认证 |
|------|------|------|------|
| GET | `/api/health` | 健康检查 | — |
| POST | `/api/upload` | 上传 PDF 文件 | 速率限制 |
| POST | `/api/parse/:sessionId` | AI 解析计划书 | X-API-Key |
| POST | `/api/chat/:sessionId` | 对话咨询 | X-API-Key |
| POST | `/api/generate/:sessionId` | 生成 PPT | X-API-Key |
| POST | `/api/company-info` | 查询公司介绍 | X-API-Key |
## 安全特性
- **命令注入防护**`execSync``spawn`(数组参数,无 shell 展开)
- **API 认证**`X-API-Key` Header`GEMINI_API_KEY` 已配置)
- **速率限制** — 每 IP 每分钟 30 次请求
- **目录遍历防护** — 静态文件服务路径校验
- **会话 LRU 缓存** — 最多 100 个活跃会话,自动清理最旧会话
## 状态机
```
created → parsing → parsed → chatting → generating → done
↘ parsed ↗
```
## 产品支持
| 产品类型 | Schema | 关键指标 |
|----------|--------|---------|
| 储蓄险 | SavingsPlanExtractionSchema | 回本年份、翻倍倍数、IRR |
| 重疾险 | CiPlanExtractionSchema | 保额、年缴、每天成本、保障项目 |
| 万用寿险 | IulExtractionSchema | 身故保障、杠杆倍数、指数账户利率 |
## PPT 风格
- **modern默认** — 深蓝 + 金色,专业高端
- **fresh** — 青绿色,清新自然
- **minimal** — 暗红 + 黑色,简洁有力
- **warm** — 棕色 + 橙色,温暖亲切

74
baodanppt/bun.lock Normal file
View File

@ -0,0 +1,74 @@
{
"lockfileVersion": 1,
"configVersion": 1,
"workspaces": {
"": {
"name": "insurance-ppt",
"dependencies": {
"@google/generative-ai": "^0.21.0",
"hono": "^4.12.23",
"pptxgenjs": "^4.0.1",
"zod": "^4.3.6",
},
"devDependencies": {
"@types/bun": "^1.3.11",
"typescript": "^6.0.2",
},
},
},
"packages": {
"@google/generative-ai": ["@google/generative-ai@0.21.0", "", {}, "sha512-7XhUbtnlkSEZK15kN3t+tzIMxsbKm/dSkKBFalj+20NvPKe1kBY7mR2P7vuijEn+f06z5+A8bVGKO0v39cr6Wg=="],
"@types/bun": ["@types/bun@1.3.14", "", { "dependencies": { "bun-types": "1.3.14" } }, "sha512-h1hFqFVcvAvD9j9K7ZW7vd82aSA+rTdznZa+5bwvCwqSB1jmmfLcbIWhOLx1/+boy/xmjgCs/OMUL8hRJSmnPw=="],
"@types/node": ["@types/node@22.19.19", "", { "dependencies": { "undici-types": "~6.21.0" } }, "sha512-dyh/xO2Fh5bYrfWaaqGrRQQGkNdmYw6AmaAUvYeUMNTWQtvb796ikLdmTchRmOlOiIJ1TDXfWgVx1QkUlQ6Hew=="],
"bun-types": ["bun-types@1.3.14", "", { "dependencies": { "@types/node": "*" } }, "sha512-4N0ig0fEomHt5R0KCFWjovxow98rIoRwKolrYdCcknNwMekCXRnWEUvgu5soYV8QXtVsrUD8B95MBOZGPvr6KQ=="],
"core-util-is": ["core-util-is@1.0.3", "", {}, "sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ=="],
"hono": ["hono@4.12.23", "", {}, "sha512-eIaZ9qDgu7XV0pxOCrg7/WhnQ6Ivm22UcxhXx/A3dcbqbbYgBEkc6e/J/s7j2tS96zoB0S9VBdLwQNCWwUo4LA=="],
"https": ["https@1.0.0", "", {}, "sha512-4EC57ddXrkaF0x83Oj8sM6SLQHAWXw90Skqu2M4AEWENZ3F02dFJE/GARA8igO79tcgYqGrD7ae4f5L3um2lgg=="],
"image-size": ["image-size@1.2.1", "", { "dependencies": { "queue": "6.0.2" }, "bin": { "image-size": "bin/image-size.js" } }, "sha512-rH+46sQJ2dlwfjfhCyNx5thzrv+dtmBIhPHk0zgRUukHzZ/kRueTJXoYYsclBaKcSMBWuGbOFXtioLpzTb5euw=="],
"immediate": ["immediate@3.0.6", "", {}, "sha512-XXOFtyqDjNDAQxVfYxuF7g9Il/IbWmmlQg2MYKOH8ExIT1qg6xc4zyS3HaEEATgs1btfzxq15ciUiY7gjSXRGQ=="],
"inherits": ["inherits@2.0.4", "", {}, "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ=="],
"isarray": ["isarray@1.0.0", "", {}, "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ=="],
"jszip": ["jszip@3.10.1", "", { "dependencies": { "lie": "~3.3.0", "pako": "~1.0.2", "readable-stream": "~2.3.6", "setimmediate": "^1.0.5" } }, "sha512-xXDvecyTpGLrqFrvkrUSoxxfJI5AH7U8zxxtVclpsUtMCq4JQ290LY8AW5c7Ggnr/Y/oK+bQMbqK2qmtk3pN4g=="],
"lie": ["lie@3.3.0", "", { "dependencies": { "immediate": "~3.0.5" } }, "sha512-UaiMJzeWRlEujzAuw5LokY1L5ecNQYZKfmyZ9L7wDHb/p5etKaxXhohBcrw0EYby+G/NA52vRSN4N39dxHAIwQ=="],
"pako": ["pako@1.0.11", "", {}, "sha512-4hLB8Py4zZce5s4yd9XzopqwVv/yGNhV1Bl8NTmCq1763HeK2+EwVTv+leGeL13Dnh2wfbqowVPXCIO0z4taYw=="],
"pptxgenjs": ["pptxgenjs@4.0.1", "", { "dependencies": { "@types/node": "^22.8.1", "https": "^1.0.0", "image-size": "^1.2.1", "jszip": "^3.10.1" } }, "sha512-TeJISr8wouAuXw4C1F/mC33xbZs/FuEG6nH9FG1Zj+nuPcGMP5YRHl6X+j3HSUnS1f3at6k75ZZXPMZlA5Lj9A=="],
"process-nextick-args": ["process-nextick-args@2.0.1", "", {}, "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag=="],
"queue": ["queue@6.0.2", "", { "dependencies": { "inherits": "~2.0.3" } }, "sha512-iHZWu+q3IdFZFX36ro/lKBkSvfkztY5Y7HMiPlOUjhupPcG2JMfst2KKEpu5XndviX/3UhFbRngUPNKtgvtZiA=="],
"readable-stream": ["readable-stream@2.3.8", "", { "dependencies": { "core-util-is": "~1.0.0", "inherits": "~2.0.3", "isarray": "~1.0.0", "process-nextick-args": "~2.0.0", "safe-buffer": "~5.1.1", "string_decoder": "~1.1.1", "util-deprecate": "~1.0.1" } }, "sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA=="],
"safe-buffer": ["safe-buffer@5.1.2", "", {}, "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g=="],
"setimmediate": ["setimmediate@1.0.5", "", {}, "sha512-MATJdZp8sLqDl/68LfQmbP8zKPLQNV6BIZoIgrscFDQ+RsvK/BxeDQOgyxKKoh0y/8h3BqVFnCqQ/gd+reiIXA=="],
"string_decoder": ["string_decoder@1.1.1", "", { "dependencies": { "safe-buffer": "~5.1.0" } }, "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg=="],
"typescript": ["typescript@6.0.3", "", { "bin": { "tsc": "bin/tsc", "tsserver": "bin/tsserver" } }, "sha512-y2TvuxSZPDyQakkFRPZHKFm+KKVqIisdg9/CZwm9ftvKXLP8NRWj38/ODjNbr43SsoXqNuAisEf1GdCxqWcdBw=="],
"undici-types": ["undici-types@6.21.0", "", {}, "sha512-iwDZqg0QAGrg9Rav5H4n0M64c3mkR59cJ6wQp+7C4nI0gsmExaedaYLNO44eT4AtBBwjbTiGPMlt2Md0T9H9JQ=="],
"util-deprecate": ["util-deprecate@1.0.2", "", {}, "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw=="],
"zod": ["zod@4.4.3", "", {}, "sha512-ytENFjIJFl2UwYglde2jchW2Hwm4GJFLDiSXWdTrJQBIN9Fcyp7n4DhxJEiWNAJMV1/BqWfW/kkg71UDcHJyTQ=="],
"bun-types/@types/node": ["@types/node@18.19.130", "", { "dependencies": { "undici-types": "~5.26.4" } }, "sha512-GRaXQx6jGfL8sKfaIDD6OupbIHBr9jv7Jnaml9tB7l4v068PAOXqfcujMMo5PhbIs6ggR1XODELqahT2R8v0fg=="],
"bun-types/@types/node/undici-types": ["undici-types@5.26.5", "", {}, "sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA=="],
}
}

View File

@ -0,0 +1,14 @@
{
"id": "ci-single",
"displayName": "单一重疾险定制方案",
"products": ["ci"],
"templateFamily": "ci",
"status": "active",
"modules": [
"company-profile",
"critical-illness-coverage-summary",
"multi-claim-analysis",
"cash-value-analysis",
"recommendation"
]
}

View File

@ -0,0 +1,14 @@
{
"id": "iul-single",
"displayName": "单一IUL定制方案",
"products": ["iul"],
"templateFamily": "iul",
"status": "active",
"modules": [
"company-profile",
"index-account-configuration",
"guaranteed-floor-analysis",
"legacy-leverage-analysis",
"recommendation"
]
}

View File

@ -0,0 +1,15 @@
{
"id": "savings-ci-iul",
"displayName": "储蓄险加重疾险加IUL组合方案",
"products": ["savings", "ci", "iul"],
"templateFamily": "bundle",
"status": "active",
"modules": [
"family-risk-map",
"savings-growth-analysis",
"critical-illness-protection-gap",
"iul-legacy-leverage",
"asset-allocation-summary",
"recommendation"
]
}

View File

@ -0,0 +1,14 @@
{
"id": "savings-ci",
"displayName": "储蓄险加重疾险组合方案",
"products": ["savings", "ci"],
"templateFamily": "bundle",
"status": "active",
"modules": [
"family-risk-map",
"savings-growth-analysis",
"critical-illness-protection-gap",
"cashflow-pressure-test",
"recommendation"
]
}

View File

@ -0,0 +1,14 @@
{
"id": "savings-iul",
"displayName": "储蓄险加IUL组合方案",
"products": ["savings", "iul"],
"templateFamily": "bundle",
"status": "active",
"modules": [
"education-fund-layer",
"savings-growth-analysis",
"iul-legacy-leverage",
"family-timeline",
"recommendation"
]
}

View File

@ -0,0 +1,14 @@
{
"id": "savings-single",
"displayName": "单一储蓄险定制方案",
"products": ["savings"],
"templateFamily": "savings",
"modules": [
"company-profile",
"scenario-by-insured-age",
"growth-analysis",
"withdrawal-analysis",
"official-data-tables",
"closing"
]
}

View File

@ -0,0 +1,15 @@
{
"id": "aia",
"displayName": "友邦保险",
"aliases": ["AIA", "友邦"],
"tenantId": "aia",
"knowledgeDirectories": ["AIA-友邦", "新加坡-友邦", "新加坡友邦"],
"evidenceRanking": ["简介", "一图", "fact", "年报", "财务", "实力", "概览"],
"companyIntro": "友邦保险提供长期储蓄、保障与财富传承方案。公司介绍页仅使用已入库资料和可追溯公开来源。",
"companyHighlights": [
{
"text": "业务发源可追溯至 1919 年,屹立亚洲逾 100 年。",
"sourceFile": "友邦-一图简介.pdf"
}
]
}

View File

@ -0,0 +1,9 @@
{
"id": "axa",
"displayName": "安盛",
"aliases": ["AXA", "安盛"],
"tenantId": "default",
"knowledgeDirectories": ["AXA-安盛"],
"evidenceRanking": ["简介", "一图", "fact", "财务", "实力", "概览", "投资"],
"companyIntro": "安盛相关公司资料仅使用内部资料库中已索引、可追溯的文件。"
}

View File

@ -0,0 +1,9 @@
{
"id": "boclife",
"displayName": "中银人寿",
"aliases": ["BOC", "BOC Life", "中银人寿", "中銀人壽"],
"tenantId": "default",
"knowledgeDirectories": ["BOC-中银人寿"],
"evidenceRanking": ["简介", "fact", "财务", "实力", "概览", "投资"],
"companyIntro": "中银人寿相关公司资料仅使用内部资料库中已索引、可追溯的文件。"
}

View File

@ -0,0 +1,9 @@
{
"id": "china-taiping",
"displayName": "中国太平",
"aliases": ["China Taiping", "中国太平", "中國太平", "太平"],
"tenantId": "default",
"knowledgeDirectories": ["新加坡-中国太平", "新加坡-太平"],
"evidenceRanking": ["简介", "fact", "财务", "实力", "概览", "投资"],
"companyIntro": "中国太平相关公司资料仅使用内部资料库中已索引、可追溯的文件。"
}

View File

@ -0,0 +1,9 @@
{
"id": "chinalife",
"displayName": "中国人寿",
"aliases": ["ChinaLife", "China Life", "中国人寿", "國壽", "国寿"],
"tenantId": "default",
"knowledgeDirectories": ["ChinaLife-中国人寿", "新加坡-国寿"],
"evidenceRanking": ["简介", "fact", "年报", "财务", "实力", "概览", "投资"],
"companyIntro": "中国人寿相关公司资料仅使用内部资料库中已索引、可追溯的文件。"
}

View File

@ -0,0 +1,9 @@
{
"id": "chubb",
"displayName": "安达人寿",
"aliases": ["CHUBB", "Chubb", "安达", "安達"],
"tenantId": "default",
"knowledgeDirectories": ["CHUBB-安达人寿"],
"evidenceRanking": ["简介", "fact", "财务", "实力", "概览", "投资"],
"companyIntro": "安达人寿相关公司资料仅使用内部资料库中已索引、可追溯的文件。"
}

View File

@ -0,0 +1,9 @@
{
"id": "cpic",
"displayName": "太平洋保险",
"aliases": ["CPIC", "太平洋保险", "太平洋保險", "太保"],
"tenantId": "default",
"knowledgeDirectories": ["CPIC-太平洋保险"],
"evidenceRanking": ["简介", "fact", "财务", "实力", "概览", "投资"],
"companyIntro": "太平洋保险相关公司资料仅使用内部资料库中已索引、可追溯的文件。"
}

View File

@ -0,0 +1,19 @@
{
"id": "ctf",
"displayName": "周大福人寿",
"aliases": ["CTF", "周大福"],
"tenantId": "ctf",
"knowledgeDirectories": ["CTF-周大福人寿"],
"evidenceRanking": ["简介", "一图", "fact", "年报", "财务", "实力", "概览"],
"companyIntro": "周大福人寿提供保障、储蓄与传承规划服务,定位长期家庭财富与保障管理。",
"companyHighlights": [
{
"text": "公开资料显示,其分红实现率专题材料覆盖「匠心・传承」同类型产品系列,可用于公司长期分红兑现能力说明。",
"sourceFile": "CTFLife_Market Insight_2024年周大福人壽分紅實現率表現全攻略_2507_(TradChi).pdf"
},
{
"text": "公开资料显示,公司提供一站式医疗增值服务与康复支持,可作为客户服务能力补充说明。",
"sourceFile": "周大福人壽醫療增值服務_TC.pdf"
}
]
}

View File

@ -0,0 +1,9 @@
{
"id": "fubon",
"displayName": "富邦人寿",
"aliases": ["Fubon", "富邦"],
"tenantId": "default",
"knowledgeDirectories": ["Fubon-Life-富邦人寿"],
"evidenceRanking": ["简介", "fact", "财务", "实力", "概览", "投资"],
"companyIntro": "富邦人寿相关公司资料仅使用内部资料库中已索引、可追溯的文件。"
}

View File

@ -0,0 +1,15 @@
{
"id": "fwd",
"displayName": "富卫",
"aliases": ["FWD", "富卫", "富衛", "FWDGroup"],
"tenantId": "default",
"knowledgeDirectories": ["FWD-富卫", "新加坡-富卫", "百慕大-富卫"],
"evidenceRanking": ["简介", "fact", "年报", "财务", "实力", "概览", "投资"],
"companyIntro": "富卫保险业务覆盖亚洲多个市场,定位多元化保障与财富管理。",
"companyHighlights": [
{
"text": "富卫保险为泛亚洲人寿保险公司,业务遍及香港、澳门、泰国、印尼、菲律宾、马来西亚、越南、日本等市场。",
"sourceFile": "FWD-富卫简介.pdf"
}
]
}

View File

@ -0,0 +1,9 @@
{
"id": "generali",
"displayName": "忠意保险",
"aliases": ["GEN", "Generali", "忠意"],
"tenantId": "default",
"knowledgeDirectories": ["GEN-忠意"],
"evidenceRanking": ["简介", "brand", "fact", "财务", "实力", "概览"],
"companyIntro": "忠意保险相关公司资料仅使用内部资料库中已索引、可追溯的文件。"
}

View File

@ -0,0 +1,9 @@
{
"id": "great-eastern",
"displayName": "大东方人寿",
"aliases": ["Great Eastern", "大东方", "大東方"],
"tenantId": "default",
"knowledgeDirectories": ["新加坡-大东方"],
"evidenceRanking": ["简介", "fact", "财务", "实力", "概览", "指数"],
"companyIntro": "大东方人寿相关公司资料仅使用内部资料库中已索引、可追溯的文件。"
}

View File

@ -0,0 +1,9 @@
{
"id": "hsbc-life",
"displayName": "汇丰人寿",
"aliases": ["HSBC", "汇丰", "匯豐"],
"tenantId": "default",
"knowledgeDirectories": ["新加坡-汇丰"],
"evidenceRanking": ["简介", "fact", "财务", "实力", "概览", "指数"],
"companyIntro": "汇丰人寿相关公司资料仅使用内部资料库中已索引、可追溯的文件。"
}

View File

@ -0,0 +1,19 @@
{
"id": "manulife",
"displayName": "宏利",
"aliases": ["ManuLife", "Manulife", "宏利", "宏利金融", "ManulifeFinancial"],
"tenantId": "default",
"knowledgeDirectories": ["ManuLife-宏利", "新加坡-宏利", "百慕大-宏利"],
"evidenceRanking": ["简介", "簡介", "fact", "年报", "财务", "实力", "概览", "投资"],
"companyIntro": "宏利金融是全球领先的金融服务集团,业务遍及亚洲、加拿大及美国,定位长期家庭财富与保障管理。",
"companyHighlights": [
{
"text": "宏利香港为宏利金融有限公司全资附属机构,业务覆盖香港、澳门,业务规模位居香港寿险市场前列。",
"sourceFile": "宏利公司简介.pdf"
},
{
"text": "宏利提供分红保单产品线,公开资料含分红实现率披露。",
"sourceFile": "宏利分红实现率.pdf"
}
]
}

View File

@ -0,0 +1,9 @@
{
"id": "pru",
"displayName": "保诚",
"aliases": ["PRU", "Prudential", "保诚", "保誠"],
"tenantId": "default",
"knowledgeDirectories": ["PRU-保诚", "新加坡-保诚"],
"evidenceRanking": ["简介", "fact", "年报", "财务", "实力", "概览", "投资"],
"companyIntro": "保诚相关公司资料仅使用内部资料库中已索引、可追溯的文件。"
}

View File

@ -0,0 +1,9 @@
{
"id": "sunlife",
"displayName": "永明",
"aliases": ["SunLife", "Sun Life", "永明"],
"tenantId": "default",
"knowledgeDirectories": ["SunLife-永明", "新加坡-永明", "百慕大-永明"],
"evidenceRanking": ["简介", "fact", "年报", "财务", "实力", "概览", "投资"],
"companyIntro": "永明相关公司资料仅使用内部资料库中已索引、可追溯的文件。"
}

View File

@ -0,0 +1,9 @@
{
"id": "tplife",
"displayName": "太平人寿",
"aliases": ["TPLife", "太平人寿", "太平人壽"],
"tenantId": "default",
"knowledgeDirectories": ["TPLife-太平人寿"],
"evidenceRanking": ["简介", "fact", "财务", "实力", "概览", "养老"],
"companyIntro": "太平人寿相关公司资料仅使用内部资料库中已索引、可追溯的文件。"
}

View File

@ -0,0 +1,9 @@
{
"id": "transamerica",
"displayName": "全美人寿",
"aliases": ["Transamerica", "全美"],
"tenantId": "default",
"knowledgeDirectories": ["新加坡-全美"],
"evidenceRanking": ["简介", "fact", "财务", "实力", "概览", "指数"],
"companyIntro": "全美人寿相关公司资料仅使用内部资料库中已索引、可追溯的文件。"
}

View File

@ -0,0 +1,9 @@
{
"id": "wll",
"displayName": "立桥人寿",
"aliases": ["WLL", "立桥", "立橋"],
"tenantId": "default",
"knowledgeDirectories": ["WLL-立桥人寿"],
"evidenceRanking": ["简介", "fact", "财务", "实力", "概览", "投资"],
"companyIntro": "立桥人寿相关公司资料仅使用内部资料库中已索引、可追溯的文件。"
}

View File

@ -0,0 +1,9 @@
{
"id": "yflife",
"displayName": "万通保险",
"aliases": ["YFLife", "万通", "萬通"],
"tenantId": "default",
"knowledgeDirectories": ["YFLife-万通"],
"evidenceRanking": ["简介", "fact", "财务", "实力", "概览", "投资", "权益表现"],
"companyIntro": "万通保险相关公司资料仅使用内部资料库中已索引、可追溯的文件。"
}

View File

@ -0,0 +1,9 @@
{
"id": "zurich",
"displayName": "苏黎世",
"aliases": ["Zurich", "苏黎世", "蘇黎世"],
"tenantId": "default",
"knowledgeDirectories": ["ZURICH-苏黎世"],
"evidenceRanking": ["简介", "fact", "财务", "实力", "概览"],
"companyIntro": "苏黎世相关公司资料仅使用内部资料库中已索引、可追溯的文件。"
}

View File

@ -0,0 +1,17 @@
{
"id": "aia-genesis-iul",
"companyId": "aia",
"planType": "iul",
"displayName": "Genesis IUL 指数型寿险计划",
"aliases": ["Genesis", "IUL", "指数型寿险", "万能寿险", "index universal life"],
"requiredModules": [
"cover",
"company",
"index-account-configuration",
"guaranteed-floor-analysis",
"legacy-leverage-analysis",
"recommendation",
"closing"
]
}

View File

@ -0,0 +1,18 @@
{
"id": "aia-global-flexi-savings",
"companyId": "aia",
"planType": "savings",
"displayName": "环球盈活储蓄保险计划",
"aliases": ["环球盈活", "環球盈活", "环X盈活", "Global Flexi Savings"],
"requiredModules": [
"cover",
"company",
"scenario-by-insured-age",
"growth-chart",
"guaranteed-vs-non-guaranteed",
"withdrawal-timeline",
"withdrawal-table",
"no-withdrawal-table",
"closing"
]
}

View File

@ -0,0 +1,17 @@
{
"id": "aia-guardian-ci",
"companyId": "aia",
"planType": "ci",
"displayName": "守护家危疾保障计划",
"aliases": ["守护家", "守x家", "守X家", "Guardian CI", "危疾保障计划"],
"requiredModules": [
"cover",
"company",
"critical-illness-coverage-summary",
"multi-claim-analysis",
"cash-value-analysis",
"recommendation",
"closing"
]
}

View File

@ -0,0 +1,30 @@
{
"id": "ctf-artisan-legacy-2",
"companyId": "ctf",
"planType": "savings",
"displayName": "匠心传承储蓄计划2",
"aliases": [
"匠心傳承",
"匠心传承",
"匠心傳承儲蓄計劃2",
"匠心傳承儲蓄計劃2尊尚版",
"匠心传承储蓄计划2",
"匠心传承储蓄计划2尊尚版",
"匠x传承",
"匠x傳承",
"匠传承",
"传家宝",
"「匠X・传承」储蓄寿险计划2(尊尚版)"
],
"requiredModules": [
"cover",
"company",
"scenario-by-insured-age",
"growth-chart",
"guaranteed-vs-non-guaranteed",
"withdrawal-timeline",
"withdrawal-table",
"no-withdrawal-table",
"closing"
]
}

View File

@ -0,0 +1,18 @@
{
"id": "fwd-atar-savings",
"companyId": "fwd",
"planType": "savings",
"displayName": "盈聚天下II保险计划",
"aliases": ["盈聚天下", "盈聚天下II", "盈聚", "GFC5", "ATAR", "AtarSavings", "FWD盈聚", "富卫盈聚"],
"requiredModules": [
"cover",
"company",
"scenario-by-insured-age",
"growth-chart",
"guaranteed-vs-non-guaranteed",
"withdrawal-timeline",
"withdrawal-table",
"no-withdrawal-table",
"closing"
]
}

View File

@ -0,0 +1,18 @@
{
"id": "manulife-lovehome-savings",
"companyId": "manulife",
"planType": "savings",
"displayName": "宏挚家传承保险计划",
"aliases": ["宏挚家", "宏X家", "宏挚家傳承", "宏挚家传承", "MIAHJ", "LoveHomeLegacy", "ManulifeLoveHome"],
"requiredModules": [
"cover",
"company",
"scenario-by-insured-age",
"growth-chart",
"guaranteed-vs-non-guaranteed",
"withdrawal-timeline",
"withdrawal-table",
"no-withdrawal-table",
"closing"
]
}

View File

@ -0,0 +1,18 @@
{
"id": "manulife-spark-savings",
"companyId": "manulife",
"planType": "savings",
"displayName": "丰誉传承储蓄计划",
"aliases": ["丰誉传承", "丰誉", "SPARK", "SparkSavings", "ManulifeReadyBuilder", "宏利丰誉"],
"requiredModules": [
"cover",
"company",
"scenario-by-insured-age",
"growth-chart",
"guaranteed-vs-non-guaranteed",
"withdrawal-timeline",
"withdrawal-table",
"no-withdrawal-table",
"closing"
]
}

View File

@ -0,0 +1,24 @@
{
"id": "ci-business",
"planType": "ci",
"stylePreset": "business",
"sourceTemplateAssetId": "business",
"cloneReady": true,
"cloneRenderer": "ci-business-v1",
"displayName": "重疾险商务风",
"requiredPageTypes": [
"cover",
"company",
"narrative",
"chart",
"compare",
"table",
"conclusion"
],
"qualityRules": {
"forbidPlaceholderImages": true,
"forbidSyntheticOfficialValues": true,
"requirePdfHash": true,
"requireSourcePagesForOfficialTables": true
}
}

View File

@ -0,0 +1,24 @@
{
"id": "iul-business",
"planType": "iul",
"stylePreset": "business",
"sourceTemplateAssetId": "business",
"cloneReady": true,
"cloneRenderer": "iul-business-v1",
"displayName": "IUL商务风",
"requiredPageTypes": [
"cover",
"company",
"narrative",
"chart",
"compare",
"table",
"conclusion"
],
"qualityRules": {
"forbidPlaceholderImages": true,
"forbidSyntheticOfficialValues": true,
"requirePdfHash": true,
"requireSourcePagesForOfficialTables": true
}
}

View File

@ -0,0 +1,29 @@
{
"id": "savings-broker",
"planType": "savings",
"stylePreset": "broker",
"sourceTemplateAssetId": "broker",
"cloneReady": true,
"cloneRenderer": "savings-broker-v1",
"displayName": "储蓄险券商风",
"maxDisplayPolicyYear": 80,
"tableIntervalYears": 10,
"requiredPageTypes": [
"cover",
"company",
"narrative",
"chart",
"timeline",
"timeline",
"table",
"table",
"conclusion",
"conclusion"
],
"qualityRules": {
"forbidPlaceholderImages": true,
"forbidSyntheticOfficialValues": true,
"requirePdfHash": true,
"requireSourcePagesForOfficialTables": true
}
}

View File

@ -0,0 +1,17 @@
{
"id": "savings-business",
"planType": "savings",
"stylePreset": "business",
"sourceTemplateAssetId": "business",
"cloneReady": true,
"cloneRenderer": "savings-business-v1",
"displayName": "储蓄险商务风",
"maxDisplayPolicyYear": 80,
"tableIntervalYears": 10,
"qualityRules": {
"forbidPlaceholderImages": true,
"forbidSyntheticOfficialValues": true,
"requirePdfHash": true,
"requireSourcePagesForOfficialTables": true
}
}

View File

@ -0,0 +1,29 @@
{
"id": "savings-chinese",
"planType": "savings",
"stylePreset": "chinese",
"sourceTemplateAssetId": "chinese",
"cloneReady": true,
"cloneRenderer": "savings-chinese-v1",
"displayName": "储蓄险中国风",
"maxDisplayPolicyYear": 80,
"tableIntervalYears": 10,
"requiredPageTypes": [
"cover",
"company",
"narrative",
"chart",
"chart",
"timeline",
"timeline",
"table",
"table",
"conclusion"
],
"qualityRules": {
"forbidPlaceholderImages": true,
"forbidSyntheticOfficialValues": true,
"requirePdfHash": true,
"requireSourcePagesForOfficialTables": true
}
}

View File

@ -0,0 +1,17 @@
{
"id": "savings-ink",
"planType": "savings",
"stylePreset": "ink",
"sourceTemplateAssetId": "ink",
"cloneReady": true,
"cloneRenderer": "savings-ink-v1",
"displayName": "储蓄险水墨风",
"maxDisplayPolicyYear": 80,
"tableIntervalYears": 10,
"qualityRules": {
"forbidPlaceholderImages": true,
"forbidSyntheticOfficialValues": true,
"requirePdfHash": true,
"requireSourcePagesForOfficialTables": true
}
}

View File

@ -0,0 +1,17 @@
{
"id": "savings-minimal",
"planType": "savings",
"stylePreset": "minimal",
"sourceTemplateAssetId": "minimal",
"cloneReady": true,
"cloneRenderer": "savings-minimal-v1",
"displayName": "储蓄险简洁风",
"maxDisplayPolicyYear": 80,
"tableIntervalYears": 10,
"qualityRules": {
"forbidPlaceholderImages": true,
"forbidSyntheticOfficialValues": true,
"requirePdfHash": true,
"requireSourcePagesForOfficialTables": true
}
}

View File

@ -0,0 +1,268 @@
{
"companies": [
{
"companyId": "aia",
"displayName": "友邦保险",
"companyIntro": "友邦保险提供长期储蓄、保障与财富传承方案。公司介绍页仅使用已入库资料和可追溯公开来源。",
"facts": [
{
"label": "成立时间",
"value": "2011年成立"
},
{
"label": "穆迪评级",
"value": "Aa2"
},
{
"label": "惠誉评级",
"value": "AA"
}
],
"evidenceFiles": [
"/Users/soldier/Desktop/公司介绍/AIA-友邦/友邦-一图简介.pdf",
"/Users/soldier/Desktop/公司介绍/AIA-友邦/友邦香港及澳门简介2508.pdf",
"/Users/soldier/Desktop/公司介绍/新加坡友邦/aia-corporate-factsheet-chinese.pdf"
]
},
{
"companyId": "axa",
"displayName": "安盛",
"companyIntro": "安盛相关公司资料仅使用内部资料库中已索引、可追溯的文件。",
"facts": [],
"evidenceFiles": [
"/Users/soldier/Desktop/公司介绍/AXA-安盛/安盛-一图简介.pdf",
"/Users/soldier/Desktop/公司介绍/AXA-安盛/AXA安盛-投资策略以及投资案例.pdf"
]
},
{
"companyId": "boclife",
"displayName": "中银人寿",
"companyIntro": "中银人寿相关公司资料仅使用内部资料库中已索引、可追溯的文件。",
"facts": [],
"evidenceFiles": [
"/Users/soldier/Desktop/公司介绍/BOC-中银人寿/中银投资概览20250603.pdf"
]
},
{
"companyId": "china-taiping",
"displayName": "中国太平",
"companyIntro": "中国太平相关公司资料仅使用内部资料库中已索引、可追溯的文件。",
"facts": [],
"evidenceFiles": [
"/Users/soldier/Desktop/公司介绍/新加坡-中国太平/CT174 Infinite Indexed Legacy EN_23.10.pdf",
"/Users/soldier/Desktop/公司介绍/新加坡-中国太平/CTPIS Infinite Indexed Wealth - Training Deck.pdf",
"/Users/soldier/Desktop/公司介绍/新加坡-中国太平/FA-Web-CTHNW-Infinite-Indexed-Legacy-CN-12.11.pdf"
]
},
{
"companyId": "chinalife",
"displayName": "中国人寿",
"companyIntro": "中国人寿相关公司资料仅使用内部资料库中已索引、可追溯的文件。",
"facts": [],
"evidenceFiles": [
"/Users/soldier/Desktop/公司介绍/ChinaLife-中国人寿/国寿养老/国寿社区养老项目手册.pdf",
"/Users/soldier/Desktop/公司介绍/ChinaLife-中国人寿/国寿养老/宣傳單張_Digital.pdf",
"/Users/soldier/Desktop/公司介绍/ChinaLife-中国人寿/国寿养老/ENRICH盈加分層宣傳單張.pdf"
]
},
{
"companyId": "chubb",
"displayName": "安达人寿",
"companyIntro": "安达人寿相关公司资料仅使用内部资料库中已索引、可追溯的文件。",
"facts": [],
"evidenceFiles": [
"/Users/soldier/Desktop/公司介绍/CHUBB-安达人寿/产品信息/终身寿险/兒童保障利益/兒童保障利益-产品介绍册.pdf",
"/Users/soldier/Desktop/公司介绍/CHUBB-安达人寿/产品信息/终身寿险/「銀齡」安心保/「銀齡」安心保-产品介绍册.pdf",
"/Users/soldier/Desktop/公司介绍/CHUBB-安达人寿/产品信息/终身寿险/世代傳承保險系列/世代傳承保險系列-产品介绍册.pdf"
]
},
{
"companyId": "cpic",
"displayName": "太平洋保险",
"companyIntro": "太平洋保险相关公司资料仅使用内部资料库中已索引、可追溯的文件。",
"facts": [],
"evidenceFiles": [
"/Users/soldier/Desktop/公司介绍/CPIC-太平洋保险/太平洋壽險香港APP下載頁V.1.pdf",
"/Users/soldier/Desktop/公司介绍/CPIC-太平洋保险/太保尊尚会/太保家园直付流程-20250623.pdf",
"/Users/soldier/Desktop/公司介绍/CPIC-太平洋保险/太保尊尚会/太保家园产品服务手册手机版2025V1.pdf"
]
},
{
"companyId": "ctf",
"displayName": "周大福人寿",
"companyIntro": "周大福人寿提供保障、储蓄与传承规划服务,定位长期家庭财富与保障管理。",
"facts": [
{
"label": "所属集团",
"value": "緊扣周大福集團"
}
],
"evidenceFiles": [
"/Users/soldier/Desktop/公司介绍/CTF-周大福人寿/周大福人壽醫療增值服務_TC.pdf",
"/Users/soldier/Desktop/公司介绍/CTF-周大福人寿/CTFLife_Market Insight_2024年周大福人壽分紅實現率表現全攻略_2507_(TradChi).pdf"
]
},
{
"companyId": "fubon",
"displayName": "富邦人寿",
"companyIntro": "富邦人寿相关公司资料仅使用内部资料库中已索引、可追溯的文件。",
"facts": [],
"evidenceFiles": [
"/Users/soldier/Desktop/公司介绍/Fubon-Life-富邦人寿/富邦三篇業配整理.pdf",
"/Users/soldier/Desktop/公司介绍/Fubon-Life-富邦人寿/富邦-優化現金提取.pdf"
]
},
{
"companyId": "fwd",
"displayName": "富卫",
"companyIntro": "富卫保险业务覆盖亚洲多个市场,定位多元化保障与财富管理。",
"facts": [
{
"label": "核心概况",
"value": "富卫保险为泛亚洲人寿保险公司,业务遍及香港、澳门、泰国、印尼、菲律宾、马来西亚、越南、日本等市场。"
}
],
"evidenceFiles": [
"/Users/soldier/Desktop/公司介绍/FWD-富卫/产品信息/医疗/醫家保醫療計劃/助销工具/醫家保醫療計劃-支援及服務簡介.pdf",
"/Users/soldier/Desktop/公司介绍/FWD-富卫/产品信息/医疗/尊衛您(寰譽版)醫療計劃/助销工具/尊衛您(寰譽版)醫療計劃支援及服務簡介.pdf",
"/Users/soldier/Desktop/公司介绍/FWD-富卫/产品信息/投資相連壽險/智悅未來/智悅未來-產品資料概要-ShineInvest-key-facts-statement.pdf"
]
},
{
"companyId": "generali",
"displayName": "忠意保险",
"companyIntro": "忠意保险相关公司资料仅使用内部资料库中已索引、可追溯的文件。",
"facts": [
{
"label": "贝氏评级",
"value": "A"
}
],
"evidenceFiles": [
"/Users/soldier/Desktop/公司介绍/GEN-忠意/Genarali_BrandStorybook忠意介绍_JUN2023_FINAL_TC.pdf"
]
},
{
"companyId": "great-eastern",
"displayName": "大东方人寿",
"companyIntro": "大东方人寿相关公司资料仅使用内部资料库中已索引、可追溯的文件。",
"facts": [],
"evidenceFiles": [
"/Users/soldier/Desktop/公司介绍/新加坡-大东方/3.大东方IUL产品简介英文版 Prestige Legacy Index (Brokers)_Final.pdf",
"/Users/soldier/Desktop/公司介绍/新加坡-大东方/大东方Income储蓄产品手册中文版PLG4储蓄.pdf",
"/Users/soldier/Desktop/公司介绍/新加坡-大东方/5.大东方IUL 趸交合同样本英文版Sample Policy Contract.pdf"
]
},
{
"companyId": "hsbc-life",
"displayName": "汇丰人寿",
"companyIntro": "汇丰人寿相关公司资料仅使用内部资料库中已索引、可追溯的文件。",
"facts": [],
"evidenceFiles": [
"/Users/soldier/Desktop/公司介绍/新加坡-汇丰/1.汇丰IUL2代产品手册英文版Specimen)HSBC IUL II PS_Final.pdf",
"/Users/soldier/Desktop/公司介绍/新加坡-汇丰/2.汇丰IUL2代产品摘要英文版IUL2 Competitive Analysis v1.0.pdf",
"/Users/soldier/Desktop/公司介绍/新加坡-汇丰/4.汇丰IUL 2代合同样本英文版Diamond Prestige IUL II GP_Final.pdf"
]
},
{
"companyId": "manulife",
"displayName": "宏利",
"companyIntro": "宏利金融是全球领先的金融服务集团,业务遍及亚洲、加拿大及美国,定位长期家庭财富与保障管理。",
"facts": [
{
"label": "核心概况",
"value": "宏利香港为宏利金融有限公司全资附属机构,业务覆盖香港、澳门,业务规模位居香港寿险市场前列。"
}
],
"evidenceFiles": [
"/Users/soldier/Desktop/公司介绍/ManuLife-宏利/公司概览/宏利投資概覽2025.pdf",
"/Users/soldier/Desktop/公司介绍/ManuLife-宏利/分红实现率/2025-分红实现率和总现金价值比率概览.pdf",
"/Users/soldier/Desktop/公司介绍/ManuLife-宏利/Manulife 宏利业务简介202408.pdf"
]
},
{
"companyId": "pru",
"displayName": "保诚",
"companyIntro": "保诚相关公司资料仅使用内部资料库中已索引、可追溯的文件。",
"facts": [],
"evidenceFiles": [
"/Users/soldier/Desktop/公司介绍/PRU-保诚/保诚介绍companystrength-tc.pdf",
"/Users/soldier/Desktop/公司介绍/PRU-保诚/保誠投資概況Company Fact Sheet_ZH_7Aug2025.pdf",
"/Users/soldier/Desktop/公司介绍/PRU-保诚/新加坡保诚--卓势传承指数宣传手册.pdf"
]
},
{
"companyId": "sunlife",
"displayName": "永明",
"companyIntro": "永明相关公司资料仅使用内部资料库中已索引、可追溯的文件。",
"facts": [],
"evidenceFiles": [
"/Users/soldier/Desktop/公司介绍/SunLife-永明/永明2025年报.pdf",
"/Users/soldier/Desktop/公司介绍/SunLife-永明/永明2024投资报告.pdf",
"/Users/soldier/Desktop/公司介绍/新加坡-永明/永明IUL储蓄计划书.pdf"
]
},
{
"companyId": "tplife",
"displayName": "太平人寿",
"companyIntro": "太平人寿相关公司资料仅使用内部资料库中已索引、可追溯的文件。",
"facts": [],
"evidenceFiles": [
"/Users/soldier/Desktop/公司介绍/TPLife-太平人寿/太平养老相关文件/太平人壽(香港)養頤積分計劃.pdf",
"/Users/soldier/Desktop/公司介绍/TPLife-太平人寿/太平养老相关文件/2_湾区养老Q&A-2024香港.pdf",
"/Users/soldier/Desktop/公司介绍/TPLife-太平人寿/太平养老相关文件/太平人寿(香港)-港人湾区养老服务手册.pdf"
]
},
{
"companyId": "transamerica",
"displayName": "全美人寿",
"companyIntro": "全美人寿相关公司资料仅使用内部资料库中已索引、可追溯的文件。",
"facts": [],
"evidenceFiles": [
"/Users/soldier/Desktop/公司介绍/新加坡-全美/全美PFG IUL储蓄产品手册中文版Product factsheet Chinese.pdf",
"/Users/soldier/Desktop/公司介绍/新加坡-全美/2.全美IUL3代产品手册英文版.pdf",
"/Users/soldier/Desktop/公司介绍/新加坡-全美/6.TA_GIUL3计划书示例 F-40-N-CN-USD-S10m-5x(SC).pdf"
]
},
{
"companyId": "wll",
"displayName": "立桥人寿",
"companyIntro": "立桥人寿相关公司资料仅使用内部资料库中已索引、可追溯的文件。",
"facts": [],
"evidenceFiles": [
"/Users/soldier/Desktop/公司介绍/WLL-立桥人寿/产品信息/智選儲蓄保/智選儲蓄保-保单样本.pdf",
"/Users/soldier/Desktop/公司介绍/WLL-立桥人寿/产品信息/享護一生壽險計劃/享護一生壽險計劃-产品手册.pdf",
"/Users/soldier/Desktop/公司介绍/WLL-立桥人寿/产品信息/息享未來儲蓄保/「息」享未來儲蓄保-产品手册.pdf"
]
},
{
"companyId": "yflife",
"displayName": "万通保险",
"companyIntro": "万通保险相关公司资料仅使用内部资料库中已索引、可追溯的文件。",
"facts": [],
"evidenceFiles": [
"/Users/soldier/Desktop/公司介绍/YFLife-万通/万通市场观望202511.pdf",
"/Users/soldier/Desktop/公司介绍/YFLife-万通/万通保险过往年金权益表现报告20250616.pdf",
"/Users/soldier/Desktop/公司介绍/YFLife-万通/投資選擇的投資表現報告 - 累積回報及年度回報202510.pdf"
]
},
{
"companyId": "zurich",
"displayName": "苏黎世",
"companyIntro": "苏黎世相关公司资料仅使用内部资料库中已索引、可追溯的文件。",
"facts": [
{
"label": "成立时间",
"value": "1872年"
},
{
"label": "管理资产规模",
"value": "2,300亿美元*"
}
],
"evidenceFiles": [
"/Users/soldier/Desktop/公司介绍/ZURICH-苏黎世/苏黎世人寿保险-企业概览.pdf"
]
}
]
}

View File

@ -0,0 +1,247 @@
{
"companies": [
{
"companyId": "aia",
"displayName": "友邦保险",
"companyIntro": "根源可追溯至1919年的上海2010年于香港联交所独立上市是亚太地区最大的独立上市人寿保险集团之一业务覆盖亚洲18个市场。",
"facts": [
{ "label": "成立/上市背景", "value": "根源可追溯至1919年的上海2010年于香港联交所独立上市" },
{ "label": "集团实力", "value": "亚太地区最大的独立上市人寿保险集团业务覆盖亚洲18个市场" },
{ "label": "业务定位", "value": "长期储蓄、健康保障、高净值财富传承及健康管理生态圈" },
{ "label": "穆迪评级", "value": "Aa2稳定" },
{ "label": "惠誉评级", "value": "AA稳定" }
]
},
{
"companyId": "axa",
"displayName": "安盛",
"companyIntro": "创办于1817年是全球最大的一体化保险及资产管理集团之一长期位列《财富》世界500强前列。",
"facts": [
{ "label": "成立/上市背景", "value": "1817年创办于法国1985年正式更名为AXA" },
{ "label": "集团实力", "value": "全球最大的一体化保险及资产管理集团之一,服务全球近亿客户" },
{ "label": "业务定位", "value": "财产险、人寿与健康险及全球资管服务" },
{ "label": "资本充足", "value": "集团偿付能力II充足率长期保持在220%以上" }
]
},
{
"companyId": "boclife",
"displayName": "中银人寿",
"companyIntro": "1998年在香港正式开业依托中银香港和中国银行集团保险体系在香港人民币寿险市场长期保持领先。",
"facts": [
{ "label": "成立/上市背景", "value": "1998年在香港正式开业" },
{ "label": "集团实力", "value": "主要股东为中银香港(控股)有限公司及中国银行集团保险有限公司" },
{ "label": "业务定位", "value": "银行保险联动,主打人民币保单、年金及高净值财富管理" },
{ "label": "标普评级", "value": "A稳定" },
{ "label": "穆迪评级", "value": "A1稳定" }
]
},
{
"companyId": "china-taiping",
"displayName": "中国太平",
"companyIntro": "1929年创立于上海是总部设在香港的中央金融企业也是我国历史最悠久的持续经营民族保险品牌之一。",
"facts": [
{ "label": "成立/上市背景", "value": "1929年创立于上海总部设在香港" },
{ "label": "集团实力", "value": "旗下拥有太平人寿、太平财险、太平再保险等多家子公司,总资产突破万亿元人民币" },
{ "label": "业务定位", "value": "跨境金融综合服务,布局跨境医疗、海外财险和大湾区养老" },
{ "label": "惠誉集团评级", "value": "A-" },
{ "label": "保险财务实力评级", "value": "旗下太平人寿及太平再保IFS评级为A" }
]
},
{
"companyId": "chinalife",
"displayName": "中国人寿",
"companyIntro": "前身与新中国同岁2003年重组后在纽约、香港、上海三地上市是中国最大的人寿保险公司之一。",
"facts": [
{ "label": "成立/上市背景", "value": "前身源于1949年2003年重组后在纽约、香港、上海三地上市" },
{ "label": "集团实力", "value": "中国最大的人寿保险公司连续多年入选《财富》世界500强" },
{ "label": "业务定位", "value": "人寿、年金、健康与意外险,并深度布局康养产业" },
{ "label": "标普评级", "value": "A+(稳定)" },
{ "label": "穆迪评级", "value": "A1稳定" }
]
},
{
"companyId": "chubb",
"displayName": "安达人寿",
"companyIntro": "隶属于全球大型上市财产险与责任险集团安达保险Chubb Group以严谨核保和卓越理赔服务见长。",
"facts": [
{ "label": "成立/上市背景", "value": "隶属于安达保险集团历史可追溯至1792年" },
{ "label": "集团实力", "value": "业务遍及全球54个国家和地区" },
{ "label": "业务定位", "value": "代际传承财富方案、儿童保障及银发族安心保障" },
{ "label": "标普评级", "value": "AA" },
{ "label": "穆迪评级", "value": "Aa3" }
]
},
{
"companyId": "cpic",
"displayName": "太平洋保险",
"companyIntro": "1991年成立于上海是中国领先的综合性保险集团之一寿险、产险与资管多元并进。",
"facts": [
{ "label": "成立/上市背景", "value": "1991年成立于上海为A+H+G三地上市综合保险集团" },
{ "label": "集团实力", "value": "连续多年入选《财富》世界500强" },
{ "label": "业务定位", "value": "寿险、产险、资管与太保家园康养社区服务" },
{ "label": "标普评级", "value": "A稳定" },
{ "label": "穆迪评级", "value": "A1稳定" }
]
},
{
"companyId": "ctf",
"displayName": "周大福人寿",
"companyIntro": "前身为富通保险2019年被新创建集团收购2024年正式更名为周大福人寿依托周大福集团多元产业生态圈。",
"facts": [
{ "label": "成立/上市背景", "value": "前身富通保险2019年被新创建集团收购2024年更名为周大福人寿" },
{ "label": "集团实力", "value": "紧扣周大福集团在零售、地产、医疗等多元产业生态圈" },
{ "label": "业务定位", "value": "中高端家庭长期财富增值、代际传承与医疗增值服务" },
{ "label": "惠誉评级", "value": "A-(强劲)" }
]
},
{
"companyId": "fubon",
"displayName": "富邦人寿",
"companyIntro": "依托台湾富邦金融控股体系于2016年在香港设立子公司主打高性价比多元货币储蓄与现金提取方案。",
"facts": [
{ "label": "成立/上市背景", "value": "母公司为台湾富邦金融控股香港子公司于2016年设立" },
{ "label": "集团实力", "value": "依托富邦金控在银行、产险、证券等领域的协同优势" },
{ "label": "业务定位", "value": "多元货币储蓄险、灵活现金提取与兼具保障的理财方案" },
{ "label": "穆迪评级", "value": "A2稳定港寿险" }
]
},
{
"companyId": "fwd",
"displayName": "富卫",
"companyIntro": "由盈科拓展集团于2013年创立是亚洲成长最快的保险集团之一聚焦数字化与多币种财富管理体验。",
"facts": [
{ "label": "成立/上市背景", "value": "2013年由盈科拓展集团收购ING港澳泰业务后创立" },
{ "label": "集团实力", "value": "业务覆盖香港、澳门、泰国、印尼、菲律宾、马来西亚、越南、日本等市场" },
{ "label": "业务定位", "value": "数字化投保体验、多币种财富管理及高端医疗计划" },
{ "label": "惠誉评级", "value": "A强劲富卫人寿保险百慕大" }
]
},
{
"companyId": "generali",
"displayName": "忠意保险",
"companyIntro": "1831年成立于意大利是全球历史最悠久的保险与资管集团之一拥有近200年专业底蕴。",
"facts": [
{ "label": "成立/上市背景", "value": "1831年成立于意大利" },
{ "label": "集团实力", "value": "业务横跨全球50多个国家长期位列世界500强" },
{ "label": "业务定位", "value": "精品化人寿、健康、财产保障与家族办公室式财富承托方案" },
{ "label": "A.M. Best评级", "value": "A优秀" },
{ "label": "惠誉评级", "value": "A+(稳定)" }
]
},
{
"companyId": "great-eastern",
"displayName": "大东方人寿",
"companyIntro": "1908年创立是新加坡及马来西亚历史最悠久、规模最大的上市人寿保险集团之一由OCBC控股。",
"facts": [
{ "label": "成立/上市背景", "value": "1908年创立" },
{ "label": "集团实力", "value": "新加坡华侨银行OCBC控股是东南亚保险业标杆" },
{ "label": "业务定位", "value": "高端美元寿险、财富传承、IUL及中长期高额储蓄方案" },
{ "label": "标普评级", "value": "AA-(极强)" }
]
},
{
"companyId": "hsbc-life",
"displayName": "汇丰人寿",
"companyIntro": "隶属于汇丰集团,深度嵌入全球银行网络,聚焦中高净值客户的财富增值、全货币管理和退休规划。",
"facts": [
{ "label": "成立/上市背景", "value": "隶属于全球大型银行及金融服务机构汇丰集团" },
{ "label": "集团实力", "value": "在香港及亚太核心枢纽拥有较高市场份额,深度嵌入汇丰全球银行网络" },
{ "label": "业务定位", "value": "中高净值客户财富增值、全货币管理和退休规划" },
{ "label": "标普评级", "value": "A+(强劲)" },
{ "label": "穆迪评级", "value": "A1稳定" }
]
},
{
"companyId": "manulife",
"displayName": "宏利",
"companyIntro": "1887年创立于加拿大1897年签发首张亚洲保单是港澳地区寿险及强积金市场的重要经营者。",
"facts": [
{ "label": "成立/上市背景", "value": "1887年创立于加拿大1897年发行首张亚洲保单" },
{ "label": "集团实力", "value": "宏利香港为宏利金融全资附属公司,是港澳强积金及寿险市场领头羊之一" },
{ "label": "业务定位", "value": "长期家庭储蓄、健康保障与退休规划,分红实现率披露透明" },
{ "label": "标普评级", "value": "AA-(极强)" },
{ "label": "穆迪评级", "value": "A1稳定" }
]
},
{
"companyId": "pru",
"displayName": "保诚",
"companyIntro": "1848年创立于伦敦现聚焦亚洲及非洲高成长市场在香港与新加坡寿险市场长期保持强势地位。",
"facts": [
{ "label": "成立/上市背景", "value": "1848年创立于英国伦敦1964年拓展香港业务" },
{ "label": "集团实力", "value": "香港寿险市场长期位列前两强,保诚新加坡在当地占有重要地位" },
{ "label": "业务定位", "value": "多元资产配置分红储蓄险及指数传承产品" },
{ "label": "标普评级", "value": "A+(强劲)" },
{ "label": "穆迪评级", "value": "A1稳定" }
]
},
{
"companyId": "sunlife",
"displayName": "永明",
"companyIntro": "1865年成立于加拿大1892年进入亚洲市场是全球领先金融服务集团之一投资风格偏稳健多元。",
"facts": [
{ "label": "成立/上市背景", "value": "1865年成立于加拿大1892年进入亚洲市场" },
{ "label": "集团实力", "value": "全球领先金融服务集团,总资产规模庞大,北美及亚洲业务版图强劲" },
{ "label": "业务定位", "value": "储蓄计划、IUL及强积金管理擅长固定收益和环球多元资产配置" },
{ "label": "标普评级", "value": "AA-(极强)" },
{ "label": "穆迪评级", "value": "Aa3稳定" }
]
},
{
"companyId": "tplife",
"displayName": "太平人寿",
"companyIntro": "隶属于中国太平保险集团,在香港重点承接大湾区养老及跨境康养服务,是集团融入湾区建设的重要平台。",
"facts": [
{ "label": "成立/上市背景", "value": "隶属于中国太平保险集团,通常特指太平人寿(香港)" },
{ "label": "集团实力", "value": "中国太平立足香港、融入粤港澳大湾区建设的重要旗舰子公司" },
{ "label": "业务定位", "value": "港人湾区养老、养颐积分计划及跨境康养社区服务" },
{ "label": "惠誉评级", "value": "A强劲" }
]
},
{
"companyId": "transamerica",
"displayName": "全美人寿",
"companyIntro": "拥有超过百年历史现隶属于荷兰全球人寿Aegon是全球高净值人寿保险市场的重要参与者。",
"facts": [
{ "label": "成立/上市背景", "value": "源自1904年总部位于美国现隶属于Aegon" },
{ "label": "集团实力", "value": "全球高净值人寿保险市场的重要开拓者与参与者" },
{ "label": "业务定位", "value": "离岸信托、大额寿险及结构化IUL财富传承方案" },
{ "label": "标普评级", "value": "A+(强劲)" },
{ "label": "穆迪评级", "value": "A1稳定" }
]
},
{
"companyId": "wll",
"displayName": "立桥人寿",
"companyIntro": "香港本土新兴寿险品牌,隶属于立桥金融集团,主打高性价比、简明易懂的储蓄与基础保障方案。",
"facts": [
{ "label": "成立/上市背景", "value": "香港本土新兴人寿保险品牌,隶属于立桥金融集团" },
{ "label": "集团实力", "value": "集团业务覆盖银行、证券、产险及寿险" },
{ "label": "业务定位", "value": "短中期本金安全型储蓄保及基础终身保障" },
{ "label": "发展策略", "value": "以具有竞争力的保证回报和金融科技体验切入香港财富管理市场" }
]
},
{
"companyId": "yflife",
"displayName": "万通保险",
"companyIntro": "前身为美国万通保险亚洲有限公司2018年完成联合收购重组2019年正式更名为万通保险国际有限公司转型为具备科技基因的国际化寿险公司。",
"facts": [
{ "label": "成立背景", "value": "前身为美国万通保险亚洲有限公司母公司美国万通拥有超过170年互惠保险历史" },
{ "label": "重大重组", "value": "2018年云锋金融携手多家机构完成对美国万通亚洲的联合收购" },
{ "label": "正式更名", "value": "2019年正式更名为万通保险国际有限公司" },
{ "label": "股东背书", "value": "主要股东包括云锋金融及间接持股、提供精算与资管支持的美国万通" }
]
},
{
"companyId": "zurich",
"displayName": "苏黎世",
"companyIntro": "1872年创建于瑞士是全球知名跨国保险集团业务遍及全球200多个国家和地区。",
"facts": [
{ "label": "成立/上市背景", "value": "1872年创建于瑞士苏黎世" },
{ "label": "集团实力", "value": "管理资产规模约2,300亿美元业务遍及全球200多个国家和地区" },
{ "label": "业务定位", "value": "投连险、企业风险管理、高端医疗及长期财富积累方案" },
{ "label": "标普评级", "value": "AA稳定" }
]
}
]
}

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,291 @@
{
"product_id": "aia-caifuyinghuo",
"product_name": "「财富盈活」储蓄保险计划",
"product_code": "CFYH",
"company": "aia",
"plan_type": "savings",
"currency": "USD",
"extracted_at": "2026-07-07T00:00:00Z",
"samples": [
{
"source_pdf": "友邦——财富盈活储蓄保险计划.pdf",
"insured_age": 1,
"insured_gender": "男",
"annual_premium": 100000.08,
"sum_insured": 100000.0,
"payment_years": 5,
"coverage_period": "终身",
"benefit_illustration_rows": 18,
"data": {
"summary": {
"insured_name": "性别:男",
"insured_age": 1,
"insured_gender": "男",
"smoker": null,
"product_name": "「财富盈活」储蓄保险计划",
"product_code": "CFYH",
"currency": "USD",
"annual_premium": 100000.08,
"annual_premium_with_levy": 100012.93,
"payment_years": 5,
"coverage_period": "终身",
"premium_total": 500000.4,
"sum_insured": 100000.0,
"basic_amount": null,
"coverage_items": [
{
"name": "首12个月意外身故赔偿",
"amount": 400000.0,
"period": null
},
{
"name": "保单货币",
"amount": 100000.0,
"period": "终身"
},
{
"name": "投保时保额",
"amount": 100000.0,
"period": "终身"
}
],
"key_clauses": [
"保证现金价值",
"复归红利",
"终期分红",
"身故赔偿",
"退保发还金额",
"保费征费"
]
},
"benefit_illustration": [
{
"policy_year": 1,
"total_premium_paid": 100000.0,
"guaranteed_cash_value": 103.0,
"reversionary_bonus": 0.0,
"total_surrender_value": 103.0,
"guaranteed_death_benefit": 100000.0,
"non_guaranteed_death_benefit": 0.0,
"death_benefit": 100000.0,
"source_page": 1
},
{
"policy_year": 2,
"total_premium_paid": 200000.0,
"guaranteed_cash_value": 103.0,
"reversionary_bonus": 0.0,
"total_surrender_value": 103.0,
"guaranteed_death_benefit": 200000.0,
"non_guaranteed_death_benefit": 0.0,
"death_benefit": 200000.0,
"source_page": 1
},
{
"policy_year": 3,
"total_premium_paid": 300000.0,
"guaranteed_cash_value": 26722.0,
"reversionary_bonus": 24294.0,
"total_surrender_value": 51015.0,
"guaranteed_death_benefit": 300000.0,
"non_guaranteed_death_benefit": 24294.0,
"death_benefit": 300000.0,
"source_page": 1
},
{
"policy_year": 4,
"total_premium_paid": 400000.0,
"guaranteed_cash_value": 75026.0,
"reversionary_bonus": 52043.0,
"total_surrender_value": 127069.0,
"guaranteed_death_benefit": 400000.0,
"non_guaranteed_death_benefit": 52043.0,
"death_benefit": 400000.0,
"source_page": 1
},
{
"policy_year": 5,
"total_premium_paid": 500000.0,
"guaranteed_cash_value": 141830.0,
"reversionary_bonus": 94028.0,
"total_surrender_value": 235858.0,
"guaranteed_death_benefit": 500000.0,
"non_guaranteed_death_benefit": 94028.0,
"death_benefit": 500000.0,
"source_page": 1
},
{
"policy_year": 10,
"total_premium_paid": 500000.0,
"guaranteed_cash_value": 315519.0,
"reversionary_bonus": 346176.0,
"total_surrender_value": 661695.0,
"guaranteed_death_benefit": 500000.0,
"non_guaranteed_death_benefit": 346176.0,
"death_benefit": 661695.0,
"source_page": 1
},
{
"policy_year": 15,
"total_premium_paid": 500000.0,
"guaranteed_cash_value": 365879.0,
"reversionary_bonus": 567701.0,
"total_surrender_value": 933580.0,
"guaranteed_death_benefit": 500000.0,
"non_guaranteed_death_benefit": 567701.0,
"death_benefit": 933580.0,
"source_page": 1
},
{
"policy_year": 20,
"total_premium_paid": 500000.0,
"guaranteed_cash_value": 507709.0,
"reversionary_bonus": 883665.0,
"total_surrender_value": 1391374.0,
"guaranteed_death_benefit": 507709.0,
"non_guaranteed_death_benefit": 883665.0,
"death_benefit": 1391374.0,
"source_page": 1
},
{
"policy_year": 25,
"total_premium_paid": 500000.0,
"guaranteed_cash_value": 512847.0,
"reversionary_bonus": 1550416.0,
"total_surrender_value": 2063264.0,
"guaranteed_death_benefit": 512847.0,
"non_guaranteed_death_benefit": 1550416.0,
"death_benefit": 2063264.0,
"source_page": 1
},
{
"policy_year": 30,
"total_premium_paid": 500000.0,
"guaranteed_cash_value": 517986.0,
"reversionary_bonus": 2409400.0,
"total_surrender_value": 2927387.0,
"guaranteed_death_benefit": 517986.0,
"non_guaranteed_death_benefit": 2409400.0,
"death_benefit": 2927387.0,
"source_page": 1
},
{
"policy_year": 65,
"total_premium_paid": 500000.0,
"guaranteed_cash_value": 584790.0,
"reversionary_bonus": 24324818.0,
"total_surrender_value": 24909607.0,
"guaranteed_death_benefit": 584790.0,
"non_guaranteed_death_benefit": 24324818.0,
"death_benefit": 24909607.0,
"source_page": 1
},
{
"policy_year": 70,
"total_premium_paid": 500000.0,
"guaranteed_cash_value": 595684.0,
"reversionary_bonus": 33532637.0,
"total_surrender_value": 34128321.0,
"guaranteed_death_benefit": 595684.0,
"non_guaranteed_death_benefit": 33532637.0,
"death_benefit": 34128321.0,
"source_page": 1
},
{
"policy_year": 75,
"total_premium_paid": 500000.0,
"guaranteed_cash_value": 608428.0,
"reversionary_bonus": 46150331.0,
"total_surrender_value": 46758758.0,
"guaranteed_death_benefit": 608428.0,
"non_guaranteed_death_benefit": 46150331.0,
"death_benefit": 46758758.0,
"source_page": 1
},
{
"policy_year": 80,
"total_premium_paid": 500000.0,
"guaranteed_cash_value": 620761.0,
"reversionary_bonus": 63442790.0,
"total_surrender_value": 64063551.0,
"guaranteed_death_benefit": 620761.0,
"non_guaranteed_death_benefit": 63442790.0,
"death_benefit": 64063551.0,
"source_page": 1
},
{
"policy_year": 85,
"total_premium_paid": 500000.0,
"guaranteed_cash_value": 635150.0,
"reversionary_bonus": 87137468.0,
"total_surrender_value": 87772617.0,
"guaranteed_death_benefit": 635150.0,
"non_guaranteed_death_benefit": 87137468.0,
"death_benefit": 87772617.0,
"source_page": 1
},
{
"policy_year": 90,
"total_premium_paid": 500000.0,
"guaranteed_cash_value": 648510.0,
"reversionary_bonus": 119607581.0,
"total_surrender_value": 120256092.0,
"guaranteed_death_benefit": 648510.0,
"non_guaranteed_death_benefit": 119607581.0,
"death_benefit": 120256092.0,
"source_page": 1
},
{
"policy_year": 95,
"total_premium_paid": 500000.0,
"guaranteed_cash_value": 665982.0,
"reversionary_bonus": 164095285.0,
"total_surrender_value": 164761267.0,
"guaranteed_death_benefit": 665982.0,
"non_guaranteed_death_benefit": 164095285.0,
"death_benefit": 164761267.0,
"source_page": 1
},
{
"policy_year": 100,
"total_premium_paid": 500000.0,
"guaranteed_cash_value": 680371.0,
"reversionary_bonus": 225056844.0,
"total_surrender_value": 225737215.0,
"guaranteed_death_benefit": 680371.0,
"non_guaranteed_death_benefit": 225056844.0,
"death_benefit": 225737215.0,
"source_page": 1
}
]
}
}
],
"canonical_sample": "友邦——财富盈活储蓄保险计划.pdf",
"coverage_items": [
{
"name": "首12个月意外身故赔偿",
"amount": 400000.0,
"period": null
},
{
"name": "保单货币",
"amount": 100000.0,
"period": "终身"
},
{
"name": "投保时保额",
"amount": 100000.0,
"period": "终身"
}
],
"key_clauses": [
"保证现金价值",
"复归红利",
"终期分红",
"身故赔偿",
"退保发还金额",
"保费征费"
],
"fitz_version": "pymupdf-1.24"
}

View File

@ -0,0 +1,544 @@
{
"product_id": "aia-huanyuyinghuo",
"product_name": "「環宇盈活」儲蓄保險計劃",
"product_code": "HYYH",
"company": "aia",
"plan_type": "savings",
"currency": "USD",
"extracted_at": "2026-07-07T00:00:00Z",
"samples": [
{
"source_pdf": "友邦——環宇盈活儲蓄保險計劃.pdf",
"insured_age": 1,
"insured_gender": "男",
"annual_premium": 100000.08,
"sum_insured": 105000.0,
"payment_years": 5,
"coverage_period": "终身",
"benefit_illustration_rows": 18,
"data": {
"summary": {
"insured_name": "性别:男",
"insured_age": 1,
"insured_gender": "男",
"smoker": null,
"product_name": "「環宇盈活」儲蓄保險計劃",
"product_code": "HYYH",
"currency": "USD",
"annual_premium": 100000.08,
"annual_premium_with_levy": 100012.93,
"payment_years": 5,
"coverage_period": "终身",
"premium_total": 500000.4,
"sum_insured": 105000.0,
"basic_amount": null,
"coverage_items": [
{
"name": "首12个月意外身故赔偿",
"amount": 100000.0,
"period": null
},
{
"name": "保单货币",
"amount": 105000.0,
"period": "终身"
},
{
"name": "投保时保额",
"amount": 105000.0,
"period": "终身"
}
],
"key_clauses": [
"保证现金价值",
"复归红利",
"终期分红",
"身故赔偿",
"退保发还金额",
"保费征费"
]
},
"benefit_illustration": [
{
"policy_year": 1,
"total_premium_paid": 100000.0,
"guaranteed_cash_value": 103.0,
"reversionary_bonus": 0.0,
"total_surrender_value": 103.0,
"guaranteed_death_benefit": 105000.0,
"non_guaranteed_death_benefit": 0.0,
"death_benefit": 105000.0,
"source_page": 1
},
{
"policy_year": 2,
"total_premium_paid": 200000.0,
"guaranteed_cash_value": 103.0,
"reversionary_bonus": 0.0,
"total_surrender_value": 103.0,
"guaranteed_death_benefit": 210000.0,
"non_guaranteed_death_benefit": 0.0,
"death_benefit": 210000.0,
"source_page": 1
},
{
"policy_year": 3,
"total_premium_paid": 300000.0,
"guaranteed_cash_value": 26722.0,
"reversionary_bonus": 23866.0,
"total_surrender_value": 50587.0,
"guaranteed_death_benefit": 315000.0,
"non_guaranteed_death_benefit": 23866.0,
"death_benefit": 315000.0,
"source_page": 1
},
{
"policy_year": 4,
"total_premium_paid": 400000.0,
"guaranteed_cash_value": 75026.0,
"reversionary_bonus": 51243.0,
"total_surrender_value": 126269.0,
"guaranteed_death_benefit": 420000.0,
"non_guaranteed_death_benefit": 51243.0,
"death_benefit": 420000.0,
"source_page": 1
},
{
"policy_year": 5,
"total_premium_paid": 500000.0,
"guaranteed_cash_value": 141830.0,
"reversionary_bonus": 93803.0,
"total_surrender_value": 235632.0,
"guaranteed_death_benefit": 525000.0,
"non_guaranteed_death_benefit": 93803.0,
"death_benefit": 525000.0,
"source_page": 1
},
{
"policy_year": 10,
"total_premium_paid": 500000.0,
"guaranteed_cash_value": 315519.0,
"reversionary_bonus": 344246.0,
"total_surrender_value": 659765.0,
"guaranteed_death_benefit": 525000.0,
"non_guaranteed_death_benefit": 344246.0,
"death_benefit": 659765.0,
"source_page": 1
},
{
"policy_year": 15,
"total_premium_paid": 500000.0,
"guaranteed_cash_value": 365879.0,
"reversionary_bonus": 567402.0,
"total_surrender_value": 933280.0,
"guaranteed_death_benefit": 525000.0,
"non_guaranteed_death_benefit": 567402.0,
"death_benefit": 933280.0,
"source_page": 1
},
{
"policy_year": 20,
"total_premium_paid": 500000.0,
"guaranteed_cash_value": 507709.0,
"reversionary_bonus": 850029.0,
"total_surrender_value": 1357738.0,
"guaranteed_death_benefit": 525000.0,
"non_guaranteed_death_benefit": 850029.0,
"death_benefit": 1357738.0,
"source_page": 1
},
{
"policy_year": 25,
"total_premium_paid": 500000.0,
"guaranteed_cash_value": 512847.0,
"reversionary_bonus": 1549602.0,
"total_surrender_value": 2062449.0,
"guaranteed_death_benefit": 525000.0,
"non_guaranteed_death_benefit": 1549602.0,
"death_benefit": 2062449.0,
"source_page": 1
},
{
"policy_year": 30,
"total_premium_paid": 500000.0,
"guaranteed_cash_value": 517986.0,
"reversionary_bonus": 2409401.0,
"total_surrender_value": 2927387.0,
"guaranteed_death_benefit": 525000.0,
"non_guaranteed_death_benefit": 2409401.0,
"death_benefit": 2927387.0,
"source_page": 1
},
{
"policy_year": 65,
"total_premium_paid": 500000.0,
"guaranteed_cash_value": 584790.0,
"reversionary_bonus": 24324817.0,
"total_surrender_value": 24909607.0,
"guaranteed_death_benefit": 584790.0,
"non_guaranteed_death_benefit": 24324817.0,
"death_benefit": 24909607.0,
"source_page": 1
},
{
"policy_year": 70,
"total_premium_paid": 500000.0,
"guaranteed_cash_value": 595684.0,
"reversionary_bonus": 33532637.0,
"total_surrender_value": 34128321.0,
"guaranteed_death_benefit": 595684.0,
"non_guaranteed_death_benefit": 33532637.0,
"death_benefit": 34128321.0,
"source_page": 1
},
{
"policy_year": 75,
"total_premium_paid": 500000.0,
"guaranteed_cash_value": 608428.0,
"reversionary_bonus": 46150329.0,
"total_surrender_value": 46758758.0,
"guaranteed_death_benefit": 608428.0,
"non_guaranteed_death_benefit": 46150329.0,
"death_benefit": 46758758.0,
"source_page": 1
},
{
"policy_year": 80,
"total_premium_paid": 500000.0,
"guaranteed_cash_value": 620761.0,
"reversionary_bonus": 63442790.0,
"total_surrender_value": 64063551.0,
"guaranteed_death_benefit": 620761.0,
"non_guaranteed_death_benefit": 63442790.0,
"death_benefit": 64063551.0,
"source_page": 1
},
{
"policy_year": 85,
"total_premium_paid": 500000.0,
"guaranteed_cash_value": 635150.0,
"reversionary_bonus": 87137468.0,
"total_surrender_value": 87772617.0,
"guaranteed_death_benefit": 635150.0,
"non_guaranteed_death_benefit": 87137468.0,
"death_benefit": 87772617.0,
"source_page": 1
},
{
"policy_year": 90,
"total_premium_paid": 500000.0,
"guaranteed_cash_value": 648510.0,
"reversionary_bonus": 119607581.0,
"total_surrender_value": 120256092.0,
"guaranteed_death_benefit": 648510.0,
"non_guaranteed_death_benefit": 119607581.0,
"death_benefit": 120256092.0,
"source_page": 1
},
{
"policy_year": 95,
"total_premium_paid": 500000.0,
"guaranteed_cash_value": 665982.0,
"reversionary_bonus": 164095285.0,
"total_surrender_value": 164761267.0,
"guaranteed_death_benefit": 665982.0,
"non_guaranteed_death_benefit": 164095285.0,
"death_benefit": 164761267.0,
"source_page": 1
},
{
"policy_year": 100,
"total_premium_paid": 500000.0,
"guaranteed_cash_value": 680371.0,
"reversionary_bonus": 225056844.0,
"total_surrender_value": 225737215.0,
"guaranteed_death_benefit": 680371.0,
"non_guaranteed_death_benefit": 225056844.0,
"death_benefit": 225737215.0,
"source_page": 1
}
]
}
},
{
"source_pdf": "友邦——環宇盈活儲蓄保險計劃(1).pdf",
"insured_age": 1,
"insured_gender": "男",
"annual_premium": 100000.08,
"sum_insured": 105000.0,
"payment_years": 5,
"coverage_period": "终身",
"benefit_illustration_rows": 18,
"data": {
"summary": {
"insured_name": "性别:男",
"insured_age": 1,
"insured_gender": "男",
"smoker": null,
"product_name": "「環宇盈活」儲蓄保險計劃",
"product_code": "HYYH",
"currency": "USD",
"annual_premium": 100000.08,
"annual_premium_with_levy": 100012.94,
"payment_years": 5,
"coverage_period": "终身",
"premium_total": 500000.4,
"sum_insured": 105000.0,
"basic_amount": null,
"coverage_items": [
{
"name": "首12个月意外身故赔偿",
"amount": 100000.0,
"period": null
},
{
"name": "保单货币",
"amount": 105000.0,
"period": "终身"
},
{
"name": "投保时保额",
"amount": 105000.0,
"period": "终身"
}
],
"key_clauses": [
"保证现金价值",
"复归红利",
"终期分红",
"身故赔偿",
"退保发还金额",
"保费征费"
]
},
"benefit_illustration": [
{
"policy_year": 1,
"total_premium_paid": 100000.0,
"guaranteed_cash_value": 103.0,
"reversionary_bonus": 0.0,
"total_surrender_value": 103.0,
"guaranteed_death_benefit": 105000.0,
"non_guaranteed_death_benefit": 0.0,
"death_benefit": 105000.0,
"source_page": 1
},
{
"policy_year": 2,
"total_premium_paid": 200000.0,
"guaranteed_cash_value": 103.0,
"reversionary_bonus": 0.0,
"total_surrender_value": 103.0,
"guaranteed_death_benefit": 210000.0,
"non_guaranteed_death_benefit": 0.0,
"death_benefit": 210000.0,
"source_page": 1
},
{
"policy_year": 3,
"total_premium_paid": 300000.0,
"guaranteed_cash_value": 26722.0,
"reversionary_bonus": 23866.0,
"total_surrender_value": 50587.0,
"guaranteed_death_benefit": 315000.0,
"non_guaranteed_death_benefit": 23866.0,
"death_benefit": 315000.0,
"source_page": 1
},
{
"policy_year": 4,
"total_premium_paid": 400000.0,
"guaranteed_cash_value": 75026.0,
"reversionary_bonus": 51243.0,
"total_surrender_value": 126269.0,
"guaranteed_death_benefit": 420000.0,
"non_guaranteed_death_benefit": 51243.0,
"death_benefit": 420000.0,
"source_page": 1
},
{
"policy_year": 5,
"total_premium_paid": 500000.0,
"guaranteed_cash_value": 141830.0,
"reversionary_bonus": 93803.0,
"total_surrender_value": 235632.0,
"guaranteed_death_benefit": 525000.0,
"non_guaranteed_death_benefit": 93803.0,
"death_benefit": 525000.0,
"source_page": 1
},
{
"policy_year": 10,
"total_premium_paid": 500000.0,
"guaranteed_cash_value": 315519.0,
"reversionary_bonus": 344246.0,
"total_surrender_value": 659765.0,
"guaranteed_death_benefit": 525000.0,
"non_guaranteed_death_benefit": 344246.0,
"death_benefit": 659765.0,
"source_page": 1
},
{
"policy_year": 15,
"total_premium_paid": 500000.0,
"guaranteed_cash_value": 365879.0,
"reversionary_bonus": 567402.0,
"total_surrender_value": 933280.0,
"guaranteed_death_benefit": 525000.0,
"non_guaranteed_death_benefit": 567402.0,
"death_benefit": 933280.0,
"source_page": 1
},
{
"policy_year": 20,
"total_premium_paid": 500000.0,
"guaranteed_cash_value": 507709.0,
"reversionary_bonus": 850029.0,
"total_surrender_value": 1357738.0,
"guaranteed_death_benefit": 525000.0,
"non_guaranteed_death_benefit": 850029.0,
"death_benefit": 1357738.0,
"source_page": 1
},
{
"policy_year": 25,
"total_premium_paid": 500000.0,
"guaranteed_cash_value": 512847.0,
"reversionary_bonus": 1549602.0,
"total_surrender_value": 2062449.0,
"guaranteed_death_benefit": 525000.0,
"non_guaranteed_death_benefit": 1549602.0,
"death_benefit": 2062449.0,
"source_page": 1
},
{
"policy_year": 30,
"total_premium_paid": 500000.0,
"guaranteed_cash_value": 517986.0,
"reversionary_bonus": 2409401.0,
"total_surrender_value": 2927387.0,
"guaranteed_death_benefit": 525000.0,
"non_guaranteed_death_benefit": 2409401.0,
"death_benefit": 2927387.0,
"source_page": 1
},
{
"policy_year": 65,
"total_premium_paid": 500000.0,
"guaranteed_cash_value": 584790.0,
"reversionary_bonus": 24324817.0,
"total_surrender_value": 24909607.0,
"guaranteed_death_benefit": 584790.0,
"non_guaranteed_death_benefit": 24324817.0,
"death_benefit": 24909607.0,
"source_page": 1
},
{
"policy_year": 70,
"total_premium_paid": 500000.0,
"guaranteed_cash_value": 595684.0,
"reversionary_bonus": 33532637.0,
"total_surrender_value": 34128321.0,
"guaranteed_death_benefit": 595684.0,
"non_guaranteed_death_benefit": 33532637.0,
"death_benefit": 34128321.0,
"source_page": 1
},
{
"policy_year": 75,
"total_premium_paid": 500000.0,
"guaranteed_cash_value": 608428.0,
"reversionary_bonus": 46150329.0,
"total_surrender_value": 46758758.0,
"guaranteed_death_benefit": 608428.0,
"non_guaranteed_death_benefit": 46150329.0,
"death_benefit": 46758758.0,
"source_page": 1
},
{
"policy_year": 80,
"total_premium_paid": 500000.0,
"guaranteed_cash_value": 620761.0,
"reversionary_bonus": 63442790.0,
"total_surrender_value": 64063551.0,
"guaranteed_death_benefit": 620761.0,
"non_guaranteed_death_benefit": 63442790.0,
"death_benefit": 64063551.0,
"source_page": 1
},
{
"policy_year": 85,
"total_premium_paid": 500000.0,
"guaranteed_cash_value": 635150.0,
"reversionary_bonus": 87137468.0,
"total_surrender_value": 87772617.0,
"guaranteed_death_benefit": 635150.0,
"non_guaranteed_death_benefit": 87137468.0,
"death_benefit": 87772617.0,
"source_page": 1
},
{
"policy_year": 90,
"total_premium_paid": 500000.0,
"guaranteed_cash_value": 648510.0,
"reversionary_bonus": 119607581.0,
"total_surrender_value": 120256092.0,
"guaranteed_death_benefit": 648510.0,
"non_guaranteed_death_benefit": 119607581.0,
"death_benefit": 120256092.0,
"source_page": 1
},
{
"policy_year": 95,
"total_premium_paid": 500000.0,
"guaranteed_cash_value": 665982.0,
"reversionary_bonus": 164095285.0,
"total_surrender_value": 164761267.0,
"guaranteed_death_benefit": 665982.0,
"non_guaranteed_death_benefit": 164095285.0,
"death_benefit": 164761267.0,
"source_page": 1
},
{
"policy_year": 100,
"total_premium_paid": 500000.0,
"guaranteed_cash_value": 680371.0,
"reversionary_bonus": 225056844.0,
"total_surrender_value": 225737215.0,
"guaranteed_death_benefit": 680371.0,
"non_guaranteed_death_benefit": 225056844.0,
"death_benefit": 225737215.0,
"source_page": 1
}
]
}
}
],
"canonical_sample": "友邦——環宇盈活儲蓄保險計劃(1).pdf",
"coverage_items": [
{
"name": "首12个月意外身故赔偿",
"amount": 100000.0,
"period": null
},
{
"name": "保单货币",
"amount": 105000.0,
"period": "终身"
},
{
"name": "投保时保额",
"amount": 105000.0,
"period": "终身"
}
],
"key_clauses": [
"保证现金价值",
"复归红利",
"终期分红",
"身故赔偿",
"退保发还金额",
"保费征费"
],
"fitz_version": "pymupdf-1.24"
}

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,71 @@
{
"version": 1,
"generatedAt": "2026-06-14T16:05:19.539316+00:00",
"assets": [
{
"id": "broker",
"sourceRoot": "/Users/soldier/Downloads",
"relativePath": "财富保障方案——券商风 .pptx",
"fileName": "财富保障方案——券商风 .pptx",
"sha256": "641b236286205e75e3f49fa6df9c4fa81978669a1675e2589cde42a9dbd04d2e",
"sizeBytes": 1454044,
"modifiedAt": "2026-06-01T02:10:45+00:00",
"slideCount": 25,
"mediaCount": 170,
"status": "indexed",
"mutationMode": "artifact-tool-exact-clone-edit"
},
{
"id": "business",
"sourceRoot": "/Users/soldier/Downloads",
"relativePath": "财富保障方案——商务风 .pptx",
"fileName": "财富保障方案——商务风 .pptx",
"sha256": "a956c2ca0c98e75a18e4ebdbc7716a3c8557fbe1b8da71c00fd536fcb9030488",
"sizeBytes": 3433594,
"modifiedAt": "2026-06-01T02:06:35+00:00",
"slideCount": 9,
"mediaCount": 37,
"status": "indexed",
"mutationMode": "artifact-tool-exact-clone-edit"
},
{
"id": "minimal",
"sourceRoot": "/Users/soldier/Downloads",
"relativePath": "财富保障方案——简洁风 .pptx",
"fileName": "财富保障方案——简洁风 .pptx",
"sha256": "333fc0f3863b151fd8660d27fb4448bc5724b9c5a51364dc6aea4fc4777af7c0",
"sizeBytes": 15799678,
"modifiedAt": "2026-06-01T02:07:34+00:00",
"slideCount": 38,
"mediaCount": 57,
"status": "indexed",
"mutationMode": "artifact-tool-exact-clone-edit"
},
{
"id": "chinese",
"sourceRoot": "/Users/soldier/Downloads",
"relativePath": "财富保障方案——中国风 .pptx",
"fileName": "财富保障方案——中国风 .pptx",
"sha256": "77b3bb58b4c238e285b45f4a9dc2c90ffbd56318055b200a6c6da2d4f605d888",
"sizeBytes": 15888805,
"modifiedAt": "2026-06-01T02:05:50+00:00",
"slideCount": 27,
"mediaCount": 39,
"status": "indexed",
"mutationMode": "artifact-tool-exact-clone-edit"
},
{
"id": "ink",
"sourceRoot": "/Users/soldier/Downloads",
"relativePath": "财富保障方案——水墨风 .pptx",
"fileName": "财富保障方案——水墨风 .pptx",
"sha256": "9812333e4868a0e3ea8dfe39236a564009d60bed3ed3821ba873b430559766b0",
"sizeBytes": 12211794,
"modifiedAt": "2026-06-01T02:04:34+00:00",
"slideCount": 31,
"mediaCount": 50,
"status": "indexed",
"mutationMode": "artifact-tool-exact-clone-edit"
}
]
}

63
baodanppt/package.json Normal file
View File

@ -0,0 +1,63 @@
{
"name": "insurance-ppt",
"version": "0.1.0",
"private": true,
"type": "module",
"description": "保险计划书 → PPT 生成器 - PDF to PPT generator for Hong Kong insurance proposals",
"bin": {
"ppg": "./src/cli.ts"
},
"scripts": {
"ppg": "bun run src/cli.ts",
"extract": "bun run src/cli.ts extract",
"generate": "bun run src/cli.ts generate",
"eval:cases": "bun run scripts/evaluate_cases.ts",
"render:marp": "bun run scripts/md_to_marp_ppt.ts",
"server": "bun run src/api/server.ts",
"dev": "bun run --watch src/api/server.ts",
"pipeline": "bun run scripts/run_pipeline.ts",
"test:template-clone": "bun run scripts/test_chinese_template_clone.ts",
"test:template-clone-broker": "bun run scripts/test_broker_template_clone.ts",
"test:template-clone-business": "bun run scripts/test_business_template_clone.ts",
"test:template-clone-business-no-withdraw": "bun run scripts/test_business_template_clone_no_withdraw.ts",
"test:template-clone-ci": "bun run scripts/test_ci_template_clone.ts",
"test:template-clone-iul": "bun run scripts/test_iul_template_clone.ts",
"test:template-clone-savings-ci": "bun run scripts/test_savings_ci_bundle_clone.ts",
"test:template-clone-savings-iul": "bun run scripts/test_savings_iul_bundle_renderer.ts",
"test:template-clone-savings-ci-iul": "bun run scripts/test_savings_ci_iul_bundle_clone.ts",
"test:template-clone-minimal": "bun run scripts/test_minimal_template_clone.ts",
"test:template-clone-ink": "bun run scripts/test_ink_template_clone.ts",
"test:template-registry": "bun run scripts/test_template_clone_registry.ts",
"test:template-clone-config": "bun run scripts/test_template_clone_config.ts",
"test:clone-status": "bun run scripts/test_clone_status_core.ts",
"test:template-requirements": "bun run scripts/test_template_requirements.ts",
"test:product-bundles": "bun run scripts/test_product_bundle_core.ts",
"test:bundle-gate": "bun run scripts/test_bundle_gate.ts",
"test:export-readiness": "bun run scripts/test_export_readiness.ts",
"test:company-evidence-guard": "bun run scripts/test_company_evidence_guard.ts",
"test:company-index-quality": "bun run scripts/test_company_index_quality.ts",
"test:company-product-match": "bun run scripts/test_company_product_match.ts",
"test:company-selection-required": "bun run scripts/test_company_selection_required.ts",
"test:download-auth": "bun run scripts/test_download_auth.ts",
"test:multi-user-api-isolation": "bun run scripts/test_multi_user_api_isolation.ts",
"test:generation-queue-cache": "bun run scripts/test_generation_queue_cache.ts",
"demo:savings-formal": "bun run scripts/run_formal_savings_demo.ts",
"index:company-kb": "python3.11 scripts/build_company_knowledge_index.py",
"index:company-kb:ocr": "python3.11 scripts/build_company_knowledge_index.py --ocr-empty --ocr-max-pages 2",
"index:templates": "python3 scripts/build_template_asset_index.py",
"render:template-clone": "node scripts/render_template_clone.mjs",
"audit:id-space:business": "bun run scripts/audit_clone_id_spaces.ts --template business --max-slides 6",
"audit:id-space:minimal": "bun run scripts/audit_clone_id_spaces.ts --template minimal --max-slides 6",
"audit:id-space:ink": "bun run scripts/audit_clone_id_spaces.ts --template ink --max-slides 6"
},
"dependencies": {
"@google/generative-ai": "^0.21.0",
"hono": "^4.12.23",
"pptxgenjs": "^4.0.1",
"zod": "^4.3.6"
},
"devDependencies": {
"@types/bun": "^1.3.11",
"typescript": "^6.0.2"
}
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 394 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 394 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 184 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 411 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 239 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.9 MiB

View File

@ -0,0 +1,9 @@
# AIA 友邦保险 素材库
adviser-01.jpg - 顾问服务 / 高净值咨询场景
adviser-02.jpg - 顾问服务备用图
brand-01.jpg - 公司品牌感主图
brand-02.jpg - 公司品牌感辅图
company-hero-01.jpg - 公司介绍页大横图
logo.png - 公司 logo 占位图(白底/彩色)
office-01.jpg - 金融办公 / 会议室场景

Binary file not shown.

After

Width:  |  Height:  |  Size: 17 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 213 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 38 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.7 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 86 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.9 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 20 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 42 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.1 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 124 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 41 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.8 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 35 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.0 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 108 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 255 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 255 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 396 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 590 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 263 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.8 MiB

View File

@ -0,0 +1,9 @@
# CTF 周大福人寿 素材库
adviser-01.jpg - 顾问服务 / 高净值咨询场景
adviser-02.jpg - 顾问服务备用图
brand-01.jpg - 公司品牌感主图
brand-02.jpg - 公司品牌感辅图
company-hero-01.jpg - 公司介绍页大横图
logo.png - 公司 logo 占位图(白底/彩色)
office-01.jpg - 金融办公 / 会议室场景

Binary file not shown.

After

Width:  |  Height:  |  Size: 60 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 416 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 187 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 214 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 314 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 230 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 271 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.6 MiB

View File

@ -0,0 +1,9 @@
# FWD 富卫保险 素材库
adviser-01.jpg - 顾问服务 / 高净值咨询场景
adviser-02.jpg - 顾问服务备用图
brand-01.jpg - 公司品牌感主图
brand-02.jpg - 公司品牌感辅图
company-hero-01.jpg - 公司介绍页大横图
logo.png - 公司 logo 占位图(白底/彩色)
office-01.jpg - 金融办公 / 会议室场景

Binary file not shown.

After

Width:  |  Height:  |  Size: 15 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 282 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 39 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.9 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 52 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.8 MiB

Some files were not shown because too many files have changed in this diff Show More