Initial commit: 国土空间规划课程智能体 v1.0

单容器 Docker 架构的国土空间规划课程智能问答系统,集成 FastAPI 后端与 Next.js 前端。

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
This commit is contained in:
2026-05-22 09:40:18 +08:00
commit ddbb79b9f6
167 changed files with 44147 additions and 0 deletions
@@ -0,0 +1,55 @@
"""
迁移孤立文档到默认知识库
"""
from sqlalchemy.orm import Session
from ..core.database import get_db
from ..models.user import User
from ..models.knowledge_base import KnowledgeBase
from ..models.document import Document
def migrate_orphaned_documents():
"""将没有知识库的文档迁移到用户的默认知识库"""
db = next(get_db())
try:
# 获取所有用户
users = db.query(User).all()
for user in users:
# 检查用户是否有孤立文档
orphaned_docs = db.query(Document).filter(
Document.user_id == user.id,
Document.knowledge_base_id.is_(None)
).all()
if orphaned_docs:
# 创建默认知识库
default_kb = KnowledgeBase(
name="默认知识库",
description="系统自动创建的默认知识库,包含之前上传的文档",
user_id=user.id,
is_system=True
)
db.add(default_kb)
db.commit()
db.refresh(default_kb)
# 将孤立文档迁移到默认知识库
for doc in orphaned_docs:
doc.knowledge_base_id = default_kb.id
db.commit()
print(f"用户 {user.username}{len(orphaned_docs)} 个文档已迁移到默认知识库")
print("孤立文档迁移完成")
except Exception as e:
print(f"迁移失败: {str(e)}")
db.rollback()
finally:
db.close()
if __name__ == "__main__":
migrate_orphaned_documents()