""" 测试分析报告生成功能 """ import sys sys.path.insert(0, "src") from fw_pms_ai.agent.analysis_report_node import generate_analysis_report_node def test_generate_analysis_report(): """测试为 AI-FB34CA0EE6C4 生成分析报告""" # 模拟数据 part_ratios = [ {"part_code": "C211F280503-1800-AA", "part_name": "牌照灯总成", "valid_storage_cnt": 0, "avg_sales_cnt": 2, "out_stock_cnt": 5, "cost_price": 14}, {"part_code": "TEST-001", "part_name": "测试配件1", "valid_storage_cnt": 10, "avg_sales_cnt": 0, "out_stock_cnt": 0, "cost_price": 100}, {"part_code": "TEST-002", "part_name": "测试配件2", "valid_storage_cnt": 0, "avg_sales_cnt": 0.5, "out_stock_cnt": 0, "cost_price": 50}, ] part_results = [ {"part_code": "C211F280503-1800-AA", "part_name": "牌照灯总成", "total_suggest_cnt": 4, "total_suggest_amount": 56.0, "priority": 1}, ] allocated_details = [ {"part_code": "C211F280503-1800-AA", "suggest_cnt": 4, "suggest_amount": 56.0}, ] # 构建 state state = { "task_no": "AI-FB34CA0EE6C4", "group_id": 2, "dealer_grouping_id": 48, "dealer_grouping_name": "测试分组", "brand_grouping_id": None, "statistics_date": "2026-02-05", "part_ratios": part_ratios, "part_results": part_results, "allocated_details": allocated_details, } print("开始生成分析报告...") result = generate_analysis_report_node(state) if "error" in result.get("analysis_report", {}): print(f"\n❌ 生成失败: {result['analysis_report']['error']}") return False else: print(f"\n✅ 分析报告生成成功!") report = result.get("analysis_report", {}) print(f" - replenishment_insights: {str(report.get('replenishment_insights', ''))[:100]}...") print(f" - urgency_assessment: {str(report.get('urgency_assessment', ''))[:100]}...") return True if __name__ == "__main__": test_generate_analysis_report()