File size: 637 Bytes
5823ed6
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
from pydantic import BaseModel
from typing import List, Optional, Dict, Any

class CompanyMeta(BaseModel):
    company_name: str
    fiscal_year: int
    currency: str = "JPY"
    ticker: Optional[str] = None
    report_title: str = "Integrated Report"
    ceo_name: Optional[str] = None
    material_topics: List[str] = []
    targets: Dict[str, Any] = {}

class ReportSections(BaseModel):
    ceo_message: str = ""
    risk_opportunity: str = ""

class RenderPayload(BaseModel):
    meta: CompanyMeta
    esg_table: List[Dict[str, Any]]
    kpi: Dict[str, float]
    sections: ReportSections
    generated_at: str
    lang: str = "ja"