zdl
|
d9106bf9f7
|
refactor(FinancialPanorama): 添加数据加载 Hook
useFinancialData Hook 功能:
- 9个财务API并行加载(Promise.all)
- 股票信息、资产负债表、利润表、现金流量表
- 财务指标、主营业务、业绩预告
- 行业排名、期间对比
- 支持期数选择(4/8/12/16期)
- 自动响应 stockCode 变化重新加载
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
|
2025-12-12 15:01:26 +08:00 |
|
zdl
|
fb42ef566b
|
refactor(FinancialPanorama): 添加工具函数模块
计算工具 (calculations.ts):
- calculateYoYChange: 同比变化率计算
- getCellBackground: 单元格背景色(红涨绿跌)
- getValueByPath: 嵌套路径取值
- isNegativeIndicator: 负向指标判断
图表配置 (chartOptions.ts):
- getMetricChartOption: 指标趋势柱状图
- getComparisonChartOption: 营收利润双轴图
- getMainBusinessPieOption: 主营业务饼图
- getCompareBarChartOption: 股票对比柱状图
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
|
2025-12-12 15:01:09 +08:00 |
|
zdl
|
a424b3338d
|
refactor(FinancialPanorama): 添加常量配置模块
- 颜色配置:中国市场红涨绿跌
- 资产负债表指标:7个分类(流动/非流动资产、负债、权益)
- 利润表指标:6个分类(营收、成本、其他收益、利润、EPS、综合收益)
- 现金流量表指标:8个核心指标
- 财务指标分类:7大类(盈利、每股、成长、运营、偿债、费用、现金流)
- 行业排名和对比指标配置
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
|
2025-12-12 15:00:51 +08:00 |
|
zdl
|
9e6e3ae322
|
refactor(FinancialPanorama): 添加 TypeScript 类型定义
- 定义基础类型:StockInfo、财务报表数据结构
- 定义业务类型:主营业务、行业排名、业绩预告
- 定义组件 Props 类型:9个子组件的 Props 接口
- 定义指标配置类型:MetricConfig、MetricSectionConfig
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
|
2025-12-12 15:00:34 +08:00 |
|
zdl
|
e92cc09e06
|
style: DeepAnalysisTab 黑金主题样式优化
- ProcessNavigation: Tab 未选中状态字体白色,数量Badge与边框颜色统一(gray.600)
- KeyFactorCard: 适配黑金主题(cardBg #252D3A, 文字颜色调整)
- KeyFactorsCard: 黑金主题重构,移除免责声明组件
- TimelineCard: 黑金主题重构,移除免责声明组件
- ValueChainCard: 调整 CardHeader 和 CardBody padding
- ValueChainFilterBar: 暂时注释筛选下拉框
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
|
2025-12-12 14:25:48 +08:00 |
|
|
|
39c6eacb58
|
update pay ui
|
2025-12-12 14:04:11 +08:00 |
|
zdl
|
23112db115
|
refactor(ValueChainCard): 重构产业链分析卡片布局
- 新增 ProcessNavigation 流程导航组件(上游→核心→下游+副标题)
- 新增 ValueChainFilterBar 筛选栏组件(类型/重要度/视图Tab切换)
- 重构布局为左右分栏:左侧流程导航,右侧筛选+视图切换
- 移除 DisclaimerBox 免责声明
- ValueChainNodeCard 适配黑金主题
- 移除卡片内部左右边距
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
|
2025-12-12 14:04:04 +08:00 |
|
|
|
2a4e2a41ec
|
update pay ui
|
2025-12-12 13:38:54 +08:00 |
|
|
|
435692ce0f
|
update pay ui
|
2025-12-12 13:34:37 +08:00 |
|
|
|
d7193c3a63
|
update pay ui
|
2025-12-12 13:30:55 +08:00 |
|
zdl
|
7c7c70c4d9
|
style: 移除 Tab 导航和卡片内部左右 padding
- TabNavigation/SubTabContainer: 移除左侧 padding (pl=0)
- BusinessStructureCard/BusinessSegmentsCard: 移除 CardBody 左右 padding
- BusinessTreeItem: 黑金主题样式优化
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
|
2025-12-12 13:13:34 +08:00 |
|
|
|
4b3ee81341
|
update pay ui
|
2025-12-12 12:38:43 +08:00 |
|
zdl
|
e049429b09
|
perf: Tab 容器组件优化
- TabPanelContainer: Loading 颜色改为金色 #D4AF37,与黑金主题一致
- SubTabContainer: 添加 memo 和 displayName
- 子 Tab 组件: StrategyTab/BusinessTab/ValueChainTab/DevelopmentTab 添加 memo 和 displayName
- TabContainer: 移除未使用的 showDivider 参数
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
|
2025-12-12 12:02:15 +08:00 |
|
zdl
|
b8cd520014
|
refactor: 抽取通用 Tab 容器组件,重构 BasicInfoTab 和 DeepAnalysisTab
新增组件:
- TabPanelContainer: 三级容器,统一 loading 状态 + VStack 布局 + 免责声明
- SubTabContainer: 二级导航容器,支持黑金/默认主题预设
重构:
- BasicInfoTab: 使用 SubTabContainer 替代原有 Tabs 实现
- DeepAnalysisTab: 拆分为 4 个子 Tab(战略分析/业务结构/产业链/发展历程)
- TabContainer: 样式调整,与 SubTabContainer 保持一致
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
|
2025-12-12 11:55:50 +08:00 |
|
|
|
e58f4e4ecf
|
update pay ui
|
2025-12-12 11:45:52 +08:00 |
|
|
|
41be30e4d5
|
update pay ui
|
2025-12-12 11:04:09 +08:00 |
|
zdl
|
96fe919164
|
feat: 竞争优势内容调整
|
2025-12-12 11:01:22 +08:00 |
|
zdl
|
4672a24353
|
refactor: 抽取 TabPanelContainer 通用容器组件
- 新增 TabPanelContainer 组件,统一处理 loading 状态和 VStack 布局
- ShareholderPanel 使用 TabPanelContainer 替代原有 loading 判断和 VStack
- ManagementPanel 使用 TabPanelContainer 替代原有 loading 判断和 VStack
- 组件使用 React.memo 优化渲染性能
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
|
2025-12-12 10:58:25 +08:00 |
|
|
|
f96a333cae
|
update pay ui
|
2025-12-12 10:56:18 +08:00 |
|
zdl
|
26bc5fece0
|
style(CompetitiveAnalysisCard): 移除卡片边框
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
|
2025-12-12 10:12:09 +08:00 |
|
|
|
eb961d83f1
|
update pay ui
|
2025-12-12 00:02:55 +08:00 |
|
zdl
|
1c35ea24cd
|
chore(DeepAnalysisTab): 更新类型定义和组件引用
- types.ts: 扩展类型定义支持新组件结构
- index.tsx: 更新组件 props 传递
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
|
2025-12-11 18:49:17 +08:00 |
|
zdl
|
d76b0d32d6
|
perf(CompetitiveAnalysisCard): 渲染优化与黑金 UI
- 渲染优化: React.memo, useMemo, 样式常量提取
- 子组件拆分: CompetitorTags, ScoreSection, AdvantagesSection
- 黑金 UI: 金色边框、金色标题、白色内容、深色雷达图主题
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
|
2025-12-11 18:49:10 +08:00 |
|
zdl
|
eb093a5189
|
perf(StrategyAnalysisCard): 渲染优化与黑金 UI
- 渲染优化: React.memo, useMemo, 样式常量提取
- 子组件拆分: EmptyState, ContentItem
- 黑金 UI: 金色标题、白色内容文字、空状态金色虚线边框
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
|
2025-12-11 18:49:03 +08:00 |
|
zdl
|
2c0b06e6a0
|
refactor(CorePositioningCard): 模块化拆分与黑金 UI 优化
- 拆分为独立目录结构: atoms/, theme.ts, index.tsx
- 提取子组件: HighlightCard, ModelBlock, SectionHeader
- 应用黑金风格: 金色边框、透明背景、金色标题
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
|
2025-12-11 18:48:56 +08:00 |
|
zdl
|
b3fb472c66
|
feat(mock): 更新深度分析 mock 数据
- 核心定位: 更新一句话定位、投资亮点、商业模式
- 战略分析: 添加战略方向和战略举措数据
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
|
2025-12-11 18:48:49 +08:00 |
|
zdl
|
6797f54b6c
|
feat: 战略分析Ui调整
|
2025-12-11 17:37:24 +08:00 |
|
|
|
3f87a3d1af
|
update pay ui
|
2025-12-11 17:23:53 +08:00 |
|
|
|
0599e2dad3
|
update pay ui
|
2025-12-11 17:00:05 +08:00 |
|
zdl
|
a47e0feed8
|
refactor(TabContainer): 抽取通用 Tab 容器组件
- 新增 src/components/TabContainer/ 通用组件
- 支持受控/非受控模式
- 支持多种主题预设(blackGold、default、dark、light)
- 支持自定义主题颜色和样式配置
- 使用 TypeScript 实现,类型完整
- 重构 CompanyTabs 使用通用 TabContainer
- 删除 CompanyTabs/TabNavigation.js(逻辑迁移到通用组件)
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
|
2025-12-11 16:59:17 +08:00 |
|
|
|
bf4521af47
|
update pay ui
|
2025-12-11 16:41:13 +08:00 |
|
|
|
b68a62acfb
|
update pay ui
|
2025-12-11 15:01:54 +08:00 |
|
|
|
736886fd40
|
update pay ui
|
2025-12-11 14:48:00 +08:00 |
|
zdl
|
13fa91a998
|
style(DeepAnalysisTab): 优化免责声明样式并更新 mock 数据
- DisclaimerBox: 简化为单行灰色文本,移除警告框样式
- Mock 数据: 更新核心定位、投资亮点、商业模式、战略分析内容
- 调整卡片顺序: 战略分析和业务板块上移
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
|
2025-12-11 14:47:17 +08:00 |
|
|
|
d6e567ba8a
|
update pay ui
|
2025-12-11 14:40:54 +08:00 |
|
|
|
9829015cb3
|
Merge branch 'feature_bugfix/251201_py_h5_ui' of https://git.valuefrontier.cn/vf/vf_react into feature_bugfix/251201_py_h5_ui
|
2025-12-11 14:23:34 +08:00 |
|
|
|
b7790db357
|
update pay ui
|
2025-12-11 14:23:25 +08:00 |
|
zdl
|
61c3f5057f
|
Merge branch 'feature_bugfix/251201_py_h5_ui' of https://git.valuefrontier.cn/vf/vf_react into feature_bugfix/251201_py_h5_ui
* 'feature_bugfix/251201_py_h5_ui' of https://git.valuefrontier.cn/vf/vf_react:
update pay ui
update pay ui
update pay ui
update pay ui
update pay ui
|
2025-12-11 14:17:26 +08:00 |
|
zdl
|
d46738da1b
|
fix: 移除 Home 页面容器 zIndex,修复客服按钮被遮挡问题
- HomePage.tsx: Container 移除 zIndex={30}
- 客服按钮 zIndex=10,之前被 30 的层级覆盖无法点击
- 移除后不影响页面内部布局
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
|
2025-12-11 14:14:47 +08:00 |
|
|
|
429c2a4531
|
update pay ui
|
2025-12-11 14:10:59 +08:00 |
|
|
|
3cc7f2ca6e
|
update pay ui
|
2025-12-11 13:53:23 +08:00 |
|
|
|
5f23844160
|
update pay ui
|
2025-12-11 13:39:45 +08:00 |
|
|
|
39ad523dad
|
update pay ui
|
2025-12-11 13:16:03 +08:00 |
|
|
|
ff42b17119
|
update pay ui
|
2025-12-11 11:56:24 +08:00 |
|
|
|
86e31fd2bf
|
update pay ui
|
2025-12-11 11:31:14 +08:00 |
|
|
|
dae1a539ac
|
update pay ui
|
2025-12-11 11:18:12 +08:00 |
|
zdl
|
fba7a7ee96
|
docs: 更新 Company 模块目录结构文档
- 添加 DeepAnalysisTab 模块化重构记录(2025-12-11)
- 更新目录结构中 DeepAnalysisTab.js → DeepAnalysisTab/
- 添加组件依赖关系图
- 添加工具函数位置表
- 添加优化效果对比
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
|
2025-12-11 10:59:12 +08:00 |
|
zdl
|
32a73efb55
|
refactor(DeepAnalysisTab): 模块化拆分为 21 个 TypeScript 文件
将 1,796 行单文件拆分为原子设计模式结构:
**atoms/** - 原子组件
- DisclaimerBox: 免责声明警告框
- ScoreBar: 评分进度条
- BusinessTreeItem: 业务树形项
- KeyFactorCard: 关键因素卡片
**components/** - Card 容器组件
- CorePositioningCard: 核心定位
- CompetitiveAnalysisCard: 竞争地位分析(含雷达图)
- BusinessStructureCard: 业务结构
- ValueChainCard: 产业链分析
- KeyFactorsCard: 关键因素
- TimelineCard: 发展时间线
- BusinessSegmentsCard: 业务板块详情
- StrategyAnalysisCard: 战略分析
**organisms/** - 复杂组件
- ValueChainNodeCard: 产业链节点(含 RelatedCompaniesModal)
- TimelineComponent: 时间线(含 EventDetailModal)
**utils/**
- chartOptions.ts: ECharts 图表配置
优化效果:主文件从 1,796 行减少到 117 行(-93%)
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
|
2025-12-11 10:59:05 +08:00 |
|
zdl
|
7819b4f8a2
|
feat(utils): 添加深度分析格式化工具函数
- formatCurrency: 货币格式化(支持亿/万单位)
- formatBusinessRevenue: 营收格式化(智能单位转换)
- formatPercentage: 百分比格式化
从 DeepAnalysisTab 提取合并到全局工具库
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
|
2025-12-11 10:58:52 +08:00 |
|
|
|
29cf0d7013
|
update pay ui
|
2025-12-11 10:07:17 +08:00 |
|