3.4 KiB
3.4 KiB
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 的类型安全。
- 更新了相关的 Pydantic 模型,加入了
数据管理器 (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.pyscripts/test-holder-number.pyscripts/test-holder-processing.pyscripts/test-tax-to-ebt.pyscripts/test-api-tax-to-ebt.pyscripts/test-config.py
- 删除了
scripts/tushare_legacy_client.py,完成了向新 Provider 架构的迁移。
文档
docs/user-guide.md: 更新了用户指南,加入了关于如何解读新增财务指标(员工、股东、税收)的说明。
备注
- 本次更新丰富了公司的非财报基本面数据,为分析提供了更多维度。
- 前端报告页的性能在增加了新图表后需要进一步观察。