""" 数据资产盘点报告生成服务路由 包含以下接口: 1. /api/v1/delivery/generate-report - 完整报告生成接口 """ from fastapi import APIRouter from app.core.response import success_response, APIResponse from app.schemas.delivery import ( GenerateReportRequest, GenerateReportResponse, ) from app.services.report_generation_service import ReportGenerationService from app.utils.logger import logger router = APIRouter(prefix="/delivery", tags=["报告生成"]) @router.post( "/generate-report", response_model=APIResponse[GenerateReportResponse], summary="完整报告生成接口", description="基于数据盘点结果、背景调研信息和价值挖掘场景,使用大模型生成完整的数据资产盘点工作总结报告" ) async def generate_report(request: GenerateReportRequest): """ 完整报告生成接口 使用大模型技术生成包含四个章节的完整报告: - 章节一:企业数字化情况简介 - 章节二:数据资源统计 - 章节三:数据资产情况盘点 - 章节四:专家建议与下一步计划 Args: request: 报告生成请求,包含项目信息、盘点结果、背景信息、价值数据等 Returns: 生成的完整报告数据 """ logger.info( f"收到报告生成请求 - 项目: {request.project_info.project_name}, " f"资产数: {len(request.inventory_data.identified_assets)}" ) try: # 调用服务生成报告 result = await ReportGenerationService.generate(request) # 返回成功响应 return success_response( data=result, message="报告生成成功" ) except Exception as e: # 异常已在全局异常处理器中处理 logger.exception(f"报告生成接口处理失败: {str(e)}") raise