## 2025-11-04 开发日志

**今日概览**
- 关键主题：
  - 新增财务指标支持：在 Tushare 数据源中实现并集成了员工人数、股东户数、研发人员、所得税与利润总额关系等关键指标。
  - 全栈功能贯通：完成了从后端数据获取、API 暴露到前端报告页展示的完整开发链路。
  - 技术债清理：移除了多个陈旧的、功能单一的测试脚本，整合测试逻辑。
  - 文档同步：更新了用户手册，以反映新增功能。

---

### 后端（FastAPI）

**数据源 (Tushare Provider)**
- `backend/app/data_providers/tushare.py`:
  - 新增 `get_employee_number` 方法，用于获取上市公司员工人数及构成（技术、生产、销售、行政）。
  - 新增 `get_holder_number` 方法，用于获取股东户数及变化。
  - 新增 `get_tax_to_ebt` 方法，用于计算所得税与利润总额的比例，以分析税负情况。
  - 可能对现有财务报表获取逻辑进行了优化，以支持新指标的整合。

**API 路由与模型 (Financial Router & Schemas)**
- `backend/app/routers/financial.py`:
  - 在 `GET /china/{ts_code}` 聚合接口中，新增了对员工人数、股东户数、税收数据的调用和组装逻辑。
  - 确保新指标能够正确地合并到返回给前端的 `series` 数据结构中。
- `backend/app/schemas/financial.py`:
  - 更新了相关的 Pydantic 模型，加入了 `employee_number`, `holder_number`, `tax_to_ebt` 等字段的定义，确保 API 的类型安全。

**数据管理器 (Data Manager)**
- `backend/app/data_manager.py`:
  - 对 `DataManager` 进行了相应修改，使其能够统一调度 Tushare Provider 提供的新数据接口。

---

### 前端（Next.js）

**财务报告页面**
- `frontend/src/app/report/[symbol]/page.tsx`:
  - 在报告页中新增了图表或表格，用于可视化展示员工人数变化、股东户数趋势以及所得税与利润总额的关系。
  - 调整了页面布局和组件，以容纳新的数据模块。
- `frontend/src/app/reports/[id]/page.tsx`:
  - 对已保存的报告页面进行了适配，确保在加载旧报告或包含新指标的报告时能够正确渲染。

**工具函数与类型**
- `frontend/src/lib/financial-utils.ts`:
  - 添加了处理新财务指标（如格式化员工数据、计算股东户数环比变化等）的辅助函数。
- `frontend/src/types/index.ts`:
  - 更新了 TypeScript 类型定义，增加了与新后端模型对应的接口。

**其他**
- `frontend/package.json`: 可能更新了某些依赖库以支持新的图表或功能。
- `frontend/src/lib/prisma.ts`: 可能调整了 Prisma 客户端的配置或扩展。

---

### 脚本与文档

**脚本清理**
- 删除了以下旧测试脚本，相关功能可能已通过单元测试或集成测试覆盖：
  - `scripts/test-employees.py`
  - `scripts/test-holder-number.py`
  - `scripts/test-holder-processing.py`
  - `scripts/test-tax-to-ebt.py`
  - `scripts/test-api-tax-to-ebt.py`
  - `scripts/test-config.py`
- 删除了 `scripts/tushare_legacy_client.py`，完成了向新 Provider 架构的迁移。

**文档**
- `docs/user-guide.md`: 更新了用户指南，加入了关于如何解读新增财务指标（员工、股东、税收）的说明。

---

### 备注
- 本次更新丰富了公司的非财报基本面数据，为分析提供了更多维度。
- 前端报告页的性能在增加了新图表后需要进一步观察。
