This commit is contained in:
2026-05-11 11:35:15 +08:00
parent 5e1d475a22
commit a68b9ca57f
22 changed files with 432 additions and 11341 deletions
+18
View File
@@ -14,6 +14,7 @@ from utils.html_generator import HTMLGenerator
from services.storage_integration_rustfs import StorageIntegrationService
from services.redis_task_manager import redis_task_manager
from services.processing_service import processing_service
from services.llm_service import llm_service
from services.task_query_service import TaskQueryService
from database.database import get_db_session
from utils.logger import get_logger
@@ -1115,6 +1116,21 @@ async def process_file_core(
logger.info("FreeCAD验证已禁用(设置 ENABLE_FREECAD_VERIFICATION=true 启用)")
verification_result = {"status": "disabled", "reason": "FreeCAD验证已禁用"}
# 9.8 LLM 增强分析(可选,不影响主流程)
llm_report = None
llm_parting = None
if analysis_result:
llm_report = await llm_service.generate_design_report(
analysis_result, detailed_cavity_json
)
# 分型推荐:当前无候选方案时跳过
candidate_schemes = detailed_cavity_json.get("candidate_schemes", [])
if candidate_schemes:
llm_parting = await llm_service.recommend_parting_direction(
geometry_data, candidate_schemes, selected_material,
cavity_count=cavity_count,
)
# 10. 完成处理
await storage_service.update_stp_file_status(db_session, stp_file_id, "completed")
await storage_service.update_task_status(
@@ -1129,6 +1145,8 @@ async def process_file_core(
tasks[task_id]["key_info"] = detailed_cavity_json # 传递完整数据给前端
tasks[task_id]["html_file"] = f"/html/{Path(html_file_path).name}" # 只使用文件名
tasks[task_id]["verification"] = verification_result # 添加验证结果
tasks[task_id]["llm_report"] = llm_report
tasks[task_id]["llm_parting_recommendation"] = llm_parting
tasks[task_id]["status"] = ProcessingStatus.COMPLETED
tasks[task_id]["completed_at"] = str(datetime.now())