本次提交引入了一系列重要功能,核心是实现了财务分析模块的动态配置,并对配置和报告页面的用户界面进行了改进。 主要变更: - **动态配置:** - 后端实现了 `ConfigManager` 服务,用于动态管理 `analysis-config.json` 和 `config.json`。 - 添加了用于读取和更新配置的 API 端点。 - 开发了前端 `/config` 页面,允许用户实时查看和修改分析配置。 - **后端增强:** - 更新了 `AnalysisClient` 和 `CompanyProfileClient` 以使用新的配置系统。 - 重构了财务数据相关的路由。 - **前端改进:** - 新增了可复用的 `Checkbox` UI 组件。 - 使用更直观和用户友好的界面重新设计了配置页面。 - 改进了财务报告页面的布局和数据展示。 - **文档与杂务:** - 更新了设计和需求文档以反映新功能。 - 更新了前后端依赖。 - 修改了开发脚本 `dev.sh`。
34 lines
929 B
Python
34 lines
929 B
Python
"""
|
|
Configuration-related Pydantic schemas
|
|
"""
|
|
from typing import Dict, Optional, Any
|
|
from pydantic import BaseModel, Field
|
|
|
|
class DatabaseConfig(BaseModel):
|
|
url: str = Field(..., description="数据库连接URL")
|
|
|
|
class NewApiConfig(BaseModel):
|
|
api_key: str = Field(..., description="New API Key")
|
|
base_url: Optional[str] = None
|
|
|
|
class DataSourceConfig(BaseModel):
|
|
api_key: str = Field(..., description="数据源API Key")
|
|
|
|
class ConfigResponse(BaseModel):
|
|
database: DatabaseConfig
|
|
new_api: NewApiConfig
|
|
data_sources: Dict[str, DataSourceConfig]
|
|
|
|
class ConfigUpdateRequest(BaseModel):
|
|
database: Optional[DatabaseConfig] = None
|
|
new_api: Optional[NewApiConfig] = None
|
|
data_sources: Optional[Dict[str, DataSourceConfig]] = None
|
|
|
|
class ConfigTestRequest(BaseModel):
|
|
config_type: str
|
|
config_data: Dict[str, Any]
|
|
|
|
class ConfigTestResponse(BaseModel):
|
|
success: bool
|
|
message: str
|