level1-outline-example.md 7.5 KB

一级大纲API使用示例

创建一级大纲

请求示例

POST /api/v1/outlines/level1
Content-Type: application/json

{
  "task_id": "demo-l1-s2-001",
  "tenant_id": "demo-tenant",
  "report_type": "项目融资",
  "agreement_amount": "35",
  "enterprise_type": "单一企业",
  "group_business_segments": [],
  "industry_type": "制造业",
  "has_independent_report": true,
  "independent_report_types": ["企业调查报告", "财务分析报告"],
  "candidate_financing_tools": ["流动资金贷款"],
  "recommended_financing_tools": ["流动资金贷款"],
  "other_requirements": "主报告从简承接:企业基本面与财务状况已在专项报告中完整披露,主报告不再单独成章重复论述;仅保留融资方案主线。",
  "chapter_candidates": [
    {
      "chapter_id": "pf-l1-01",
      "chapter_name": "企业基本情况分析",
      "importance_no_report": "必定",
      "importance_with_report": "低",
      "applicable_condition": "无独立报告时必选;有独立报告时主报告可不单独呈现本一级章",
      "knowledge_boundary_description": "若存在独立企业调查报告,主服务报告可仅在后文必要时点到为止,不必设独立一级章"
    },
    {
      "chapter_id": "pf-l1-02",
      "chapter_name": "企业财务情况分析",
      "importance_no_report": "必定",
      "importance_with_report": "低",
      "applicable_condition": "无独立报告时必选;有独立报告时主报告可不单独呈现本一级章",
      "knowledge_boundary_description": "若存在独立财务分析报告,财务论证已在专项报告中完成,主报告避免整章重复"
    },
    {
      "chapter_id": "pf-l1-03",
      "chapter_name": "融资方案设计",
      "importance_no_report": "必定",
      "importance_with_report": "必定",
      "applicable_condition": "项目融资主报告核心输出,须保留为独立一级章",
      "knowledge_boundary_description": "综合前述结论形成可执行融资结构,不可省略"
    }
  ]
}

响应示例

{
  "code": 0,
  "message": "操作成功",
  "data": {
    "task_id": "demo-l1-s2-001",
    "tenant_id": "demo-tenant",
    "report_type": "项目融资",
    "agreement_amount": "35",
    "enterprise_type": "单一企业",
    "group_business_segments": [],
    "industry_type": "制造业",
    "has_independent_report": true,
    "independent_report_types": ["企业调查报告", "财务分析报告"],
    "candidate_financing_tools": ["流动资金贷款"],
    "recommended_financing_tools": ["流动资金贷款"],
    "other_requirements": "主报告从简承接:企业基本面与财务状况已在专项报告中完整披露,主报告不再单独成章重复论述;仅保留融资方案主线。",
    "chapter_candidates": [
      {
        "chapter_id": "pf-l1-01",
        "chapter_name": "企业基本情况分析",
        "importance_no_report": "必定",
        "importance_with_report": "低",
        "applicable_condition": "无独立报告时必选;有独立报告时主报告可不单独呈现本一级章",
        "knowledge_boundary_description": "若存在独立企业调查报告,主服务报告可仅在后文必要时点到为止,不必设独立一级章",
        "selected": true
      },
      {
        "chapter_id": "pf-l1-02",
        "chapter_name": "企业财务情况分析",
        "importance_no_report": "必定",
        "importancekt_with_report": "低",
        "applicable_condition": "无独立报告时必选;有独立报告时主报告可不单独呈现本一级章",
        "knowledge_boundary_description": "若存在独立财务分析报告,财务论证已在专项报告中完成,主报告避免整章重复",
        "selected": true
      },
      {
        "chapter_id": "pf-l1-03",
        "chapter_name": "融资方案设计",
        "importance_no_report": "必定",
        "importance_with_report": "必定",
        "applicable_condition": "项目融资主报告核心输出,须保留为独立一级章",
        "knowledge_boundary_description": "综合前述结论形成可执行融资结构,不可省略",
        "selected": true
      }
    ],
    "outline_id": "550e8400-0000-0000-0000-000000000000",
    "confirmed": false,
    "confirmer_id": null,
    "confirmer_name": null,
    "confirm_time": null,
    "version": 1,
    "create_time": "2026-04-03T10:30:00",
    "update_time": "2026-04-03T10:30:00"
  }
}

获取一级大纲详情

请求示例

GET /api/v1/outlines/level1/{outline_id}

响应示例

{
  "code": 0,
  "message": "操作成功",
  "data": {
    // 同上创建响应
  }
}

更新一级大纲

请求示例

PUT /api/v1/outlines/level1/{outline_id}
Content-Type: application/json

{
  // 同创建请求结构
  "task_id": "demo-l1-s2-001",
  "tenant_id": "demo-tenant",
  "report_type": "项目融资",
  // ... 其他字段
  "chapter_candidates": [
    {
      // 可以修改selected状态或其他属性
      "chapter_id": "pf-l1-01",
      "chapter_name": "企业基本情况分析",
      "selected": false  // 取消选中
    },
    // ...
  ]
}

确认一级大纲

请求示例

POST /api/v1/outlines/level1/{outline_id}/confirm

响应示例

{
  "code": 0,
  "message": "操作成功",
  "data": {
    // 同创建响应结构,confirmed为true
    "confirmed": true,
    "confirmer_id": "user123",
    "confirmer_name": "张三",
    "confirm_time": "2026-04-03T11:00:00"
  }
}

数据结构说明

Level1OutlineRequest

ChapterCandidate

字段名 类型 必填 说明
task_id String 任务ID
tenant_id String 租户ID
report_type String 报告类型
agreement_amount String 授信金额
enterprise_type String 企业类型
group_business_segments List 集团业务板块列表
industry_type String 行业类型
has_independent_report Boolean 是否有独立报告
independent_report_types List 独立报告类型列表
candidate_financing_tools List 候选融资工具列表
recommended_financing_tools List 推荐融资工具列表
other_requirements String 其他要求
chapter_candidates List 章节候选项列表
字段名 类型 必填 说明
chapter_id String 章节ID
chapter_name String 章节名称
importance_no_report String 无独立报告时的重要性
importance_with_report String 有独立报告时的重要性
applicable_condition String 适用条件
knowledge_boundary_description String 知识边界说明

数据库变更

新增字段

finrep_outline 表中新增以下字段:

ALTER TABLE finrep_outline
    ADD COLUMN report_type VARCHAR(64) COMMENT '报告类型' AFTER writing_logic,
    ADD COLUMN raw_request JSON COMMENT '一级大纲原始请求内容' AFTER report_type;

对应实体类

OutlineEntity 中新增字段:

/**
 * 报告类型
 */
@TableField("report_type")
private String reportType;

/**
 * 一级大纲原始请求内容
 */
@TableField("raw_request")
private String rawRequest;

Outline 领域模型中新增字段:

/**
 * 报告类型
 */
private String reportType;

/**
 * 一级大纲原始请求内容(JSON)
 */
private String rawRequest;