Lv, Qi
|
9d62a53b73
|
refactor(architecture): Align frontend & docs with DB gateway pattern
本次提交旨在完成一次架构一致性重构,核心目标是使前端代码和相关文档完全符合“`data-persistence-service`是唯一数据库守门人”的设计原则。
主要变更包括:
1. **移除前端数据库直连**:
* 从`docker-compose.yml`中删除了`frontend`服务的`DATABASE_URL`。
* 彻底移除了`frontend`项目中的`Prisma`依赖、配置文件和客户端实例。
2. **清理前端UI**:
* 从配置页面中删除了所有与数据库设置相关的UI组件和业务逻辑。
3. **同步更新文档**:
* 更新了《用户使用文档》和《需求文档》,移除了所有提及或要求前端进行数据库配置的过时内容。
此次重构后,系统前端的数据交互已完全收敛至`api-gateway`,确保了架构的统一性、健壮性和高内聚。
|
2025-11-17 01:29:56 +08:00 |
|
Lv, Qi
|
45ec5bb16d
|
reorg docs
|
2025-11-17 00:58:43 +08:00 |
|
Lv, Qi
|
5327e76aaa
|
chore: 提交本轮 Rust 架构迁移相关改动
- docker-compose: 下线 Python backend/config-service,切换至 config-service-rs
- archive: 归档 legacy Python 目录至 archive/python/*
- services: 新增/更新 common-contracts、api-gateway、各 provider、report-generator-service、config-service-rs
- data-persistence-service: API/system 模块与模型/DTO 调整
- frontend: 更新 useApi 与 API 路由
- docs: 更新路线图并勾选光荣退役
- cleanup: 移除 data-distance-service 占位测试
|
2025-11-16 20:55:46 +08:00 |
|
Lv, Qi
|
0e45dd4a3f
|
docs: 更新路线图—勾选光荣退役并归档旧Python服务
- 勾选阶段五第3项下线Python服务
- 描述将 backend/ 与 services/config-service/ 归档至 archive/python/
- 明确无Python组件下系统运行的验收标准
|
2025-11-16 20:54:01 +08:00 |
|
Lv, Qi
|
21155bc4f8
|
feat(realtime): 接入前端实时报价并完善后端缓存
前端: 新增 RealTimeQuoteResponse 类型;新增 useRealtimeQuote Hook 并在报告页图表旁展示价格与时间戳(严格 TTL,无兜底)
FastAPI: 新增 GET /financials/{market}/{symbol}/realtime?max_age_seconds=.. 只读端点;通过 DataPersistenceClient 读取 Rust 缓存
Rust: 新增 realtime_quotes hypertable 迁移;新增 POST /api/v1/market-data/quotes 与 GET /api/v1/market-data/quotes/{symbol}?market=..;新增 DTO/Model/DB 函数;修正 #[api] 宏与路径参数;生成 SQLx 离线缓存 (.sqlx) 以支持离线构建
Python: DataPersistenceClient 新增 upsert/get 实时报价,并调整 GET 路径与参数
说明: TradingView 图表是第三方 websocket,不受我们缓存控制;页面数值展示走自有缓存通路,统一且可控。
|
2025-11-09 05:12:14 +08:00 |
|
Lv, Qi
|
3d0fd6f704
|
refactor(phase0-1): 容器化与配置服务拆分,并清理根目录
- 新增 docker-compose 与 Tiltfile,容器化 backend/frontend/postgres(宿主口+10000)
- 新增 services/config-service(GET /api/v1/system, /analysis-modules),并加入 compose
- backend ConfigManager 移除本地文件回退,强制依赖 config-service
- 新增 backend/frontend Dockerfile
- 清理根目录:移动 pm2.config.js -> deployment/;dev.py -> scripts/;删除根 package.json 与 lock
- 新增 .gitignore,忽略二进制与临时文件
|
2025-11-08 21:07:38 +08:00 |
|
xucheng
|
ca60410966
|
feat: 通用市场财务/快照/分析接口;增强数据源与配置读取
Backend
- router(financial): 新增通用路径 /{market}/{stock_code}、/snapshot、/analysis/stream
- 用 MarketEnum 统一市场(cn/us/hk/jp)
- 将 /china/{ts_code} 改为通用 get_financials,并规范 period,按年限裁剪
- 新增通用昨日快照接口(CN 复用原逻辑,其他市场兜底近交易日收盘)
- data_manager: 仅从 config/config.json 读取各 provider API key,不再读取环境变量
- series 构建更健壮:None/空结构判定;接受 numpy/pandas 数值类型并安全转 float
- provider(finnhub):
- SDK 失败时使用 httpx 直连兜底(profile2、financials-reported)
- 规范化年度报表,映射 revenue/net income/gross profit/assets/equity/goodwill/OCF/CapEx
- 计算 gross/net margin、ROA、ROE;直接产出 series 结构
- 增加关键步骤日志与异常保护
- provider(yfinance): 修正同步阻塞的获取逻辑,使用 run_in_executor 包装
Frontend
- hooks(useApi):
- 将中国财务接口路径改为 /api/financials/cn
- 新增 useFinancials 与 useSnapshot,统一多市场数据访问
- report/[symbol]/page.tsx:
- 支持多市场(映射 usa→us、china→cn 等),统一 symbol 与分析流路径
- 去除仅限中国市场的 UI 限制,财务/分析/图表对多市场可用
- 使用新的分析与快照 API 路径
- lib/prisma.ts: 去除无关内容(微小空行调整)
Docs
- 重组文档目录:
- docs/已完成任务/tasks.md(重命名自 docs/tasks.md)
- docs/未完成任务/us_market_integration_tasks.md 新增
BREAKING CHANGE
- API 路径变更:
- 财务数据:/api/financials/china/{ts_code} → /api/financials/{market}/{stock_code}
- 快照:/api/financials/china/{ts_code}/snapshot → /api/financials/{market}/{stock_code}/snapshot
- 分析流:/api/financials/china/{ts_code}/analysis/{type}/stream → /api/financials/{market}/{stock_code}/analysis/{type}/stream
- 前端需使用 useFinancials/useSnapshot 或更新为 /cn 路径以兼容中国市场
|
2025-11-06 20:01:08 +08:00 |
|
xucheng
|
0b09abf2e5
|
docs(logs): add 2025-11-06 dev log; unignore docs/logs; add data dictionary and project status
|
2025-11-06 19:57:17 +08:00 |
|
xucheng
|
edfd51b0a7
|
feat: 昨日快照API与前端卡片;注册orgs路由;多项优化
- backend(financial): 新增 /china/{ts_code}/snapshot API,返回昨日交易日的收盘价/市值/PE/PB/股息率等
- backend(schemas): 新增 TodaySnapshotResponse
- backend(main): 注册 orgs 路由 /api/v1/orgs
- backend(providers:finnhub): 归一化财报字段并计算 gross_margin/net_margin/ROA/ROE
- backend(providers:tushare): 股东户数报告期与财报期对齐
- backend(routers/financial): years 默认改为 10(最大 10)
- config: analysis-config.json 切换到 qwen-flash-2025-07-28
- frontend(report/[symbol]): 新增“昨日快照”卡片、限制展示期数为10、优化增长与阈值高亮、修正类名与标题处理
- frontend(reports/[id]): 统一 period 变量与计算,修正表格 key
- frontend(hooks): 新增 useChinaSnapshot 钩子与类型
- scripts: dev.sh 增加调试输出
|
2025-11-05 17:00:32 +08:00 |
|
xucheng
|
3475138419
|
feat(数据): 新增员工、股东及税务指标并生成日志
- 后端: Tushare provider 新增 get_employee_number, get_holder_number, get_tax_to_ebt 方法,并在 financial 路由中集成。
- 前端: report 页面新增对应图表展示,并更新相关类型与工具函数。
- 清理: 移除多个过时的测试脚本。
- 文档: 创建 2025-11-04 开发日志并更新用户手册。
|
2025-11-04 21:22:32 +08:00 |
|
xucheng
|
3ffb30696b
|
修改了财务数据获取时的一些结构,但还没有完成,今天先做到这儿。
|
2025-11-04 14:03:34 +08:00 |
|
xucheng
|
ff7dc0c95a
|
feat(backend): introduce DataManager and multi-provider; analysis orchestration; streaming endpoints; remove legacy tushare_client; enhance logging
feat(frontend): integrate Prisma and reports API/pages
chore(config): add data_sources.yaml; update analysis-config.json
docs: add 2025-11-03 dev log; update user guide
scripts: enhance dev.sh; add tushare_legacy_client
deps: update backend and frontend dependencies
|
2025-11-03 21:48:08 +08:00 |
|
xucheng
|
b982cd5368
|
更新前端配置、文档和脚本
|
2025-10-31 22:14:19 +08:00 |
|
xucheng
|
b5a4d2212c
|
feat: 实现动态分析配置并优化前端UI
本次提交引入了一系列重要功能,核心是实现了财务分析模块的动态配置,并对配置和报告页面的用户界面进行了改进。
主要变更:
- **动态配置:**
- 后端实现了 `ConfigManager` 服务,用于动态管理 `analysis-config.json` 和 `config.json`。
- 添加了用于读取和更新配置的 API 端点。
- 开发了前端 `/config` 页面,允许用户实时查看和修改分析配置。
- **后端增强:**
- 更新了 `AnalysisClient` 和 `CompanyProfileClient` 以使用新的配置系统。
- 重构了财务数据相关的路由。
- **前端改进:**
- 新增了可复用的 `Checkbox` UI 组件。
- 使用更直观和用户友好的界面重新设计了配置页面。
- 改进了财务报告页面的布局和数据展示。
- **文档与杂务:**
- 更新了设计和需求文档以反映新功能。
- 更新了前后端依赖。
- 修改了开发脚本 `dev.sh`。
|
2025-10-30 14:50:36 +08:00 |
|
xucheng
|
6508589027
|
feat: 完成公司简介部分
|
2025-10-28 23:31:28 +08:00 |
|
xucheng
|
4d7aa56b4b
|
Initial commit
|
2025-10-21 20:17:14 +08:00 |
|