feat: data_models 扩展 MixedParagraph/MixedSheet(段落容器)

This commit is contained in:
lhl
2026-08-09 04:04:14 +08:00
parent 0f137b945b
commit 539945be67
4 changed files with 47 additions and 4 deletions
+20 -3
View File
@@ -1,8 +1,8 @@
from __future__ import annotations
from dataclasses import dataclass
from dataclasses import dataclass, field
from enum import Enum
from typing import Any
from typing import Any, Literal
class SheetType(Enum):
@@ -222,4 +222,21 @@ class StructuredSource:
rule_docs: list[RuleDocument]
image_analyses: list[ImageAnalysis]
existing_system: ExistingSystemInfo | None
comments: list[CellComment]
comments: list[CellComment]
@dataclass
class MixedParagraph:
"""混合 sheet 的一个段落(表格或自由文本)"""
kind: Literal["table", "free_text"]
matrix: list[list[Any]] | None = None # 该段原始矩阵(调试/重现)
table: ExcelTable | None = None # kind="table" 时填充
text: str | None = None # kind="free_text" 时填充(段全文)
source_range: tuple[int, int] | None = None # (first_row, last_row) 矩阵 0-based
@dataclass
class MixedSheet:
"""混合 sheet 的段落集合"""
name: str
paragraphs: list[MixedParagraph] = field(default_factory=list)