#!/usr/bin/env python3
"""将CMA战略地图完整文档导入知识库"""
import pymysql, re

DB = dict(host='127.0.0.1', port=3306, user='cma_user', password='cma_pass_2026', database='cma', charset='utf8mb4')

DOC = "/root/CMA_Strategy_Map_完整分析.md"

# 读取文档
with open(DOC) as f:
    content = f.read()

# 按章节分割（## 开头）
chapters = re.split(r'\n(?=## \d+\.)', content)

articles = []
for i, ch in enumerate(chapters):
    if not ch.strip():
        continue
    # 提取标题
    title_match = re.match(r'##\s+(.+?)(?:\n|$)', ch)
    title = title_match.group(1).strip() if title_match else f"第{i+1}部分"
    # 提取摘要
    summary = ""
    for line in ch.split('\n')[:5]:
        clean = line.strip()
        if clean and not clean.startswith('#') and not clean.startswith('>') and len(clean) > 10:
            summary = clean[:200]
            break
    
    articles.append({
        "title": title[:200],
        "summary": summary,
        "content": ch.strip(),
        "category": "CMA完整文档",
        "icon": "📘",
        "related_page": "/knowledge",
        "sort_order": i
    })

conn = pymysql.connect(**DB)
cur = conn.cursor()

# 先删除同分类旧文章
cur.execute("DELETE FROM knowledge_articles WHERE category = 'CMA完整文档'")
print(f"已清理旧文章")

inserted = 0
for a in articles:
    cur.execute(
        "INSERT INTO knowledge_articles (title, summary, content, category, icon, related_page, sort_order) VALUES (%s,%s,%s,%s,%s,%s,%s)",
        (a['title'], a['summary'], a['content'], a['category'], a['icon'], a['related_page'], a['sort_order'])
    )
    inserted += 1
    print(f"  [{inserted}] {a['title'][:50]}...")

conn.commit()
cur.close()
conn.close()
print(f"\n✅ 导入完成: {inserted} 篇文章")
