zdl
|
c639b418f0
|
refactor(Center): 重构个人中心为左右布局
- 左侧自适应:投资仪表盘、规划中心、论坛
- 右侧固定200px:关注股票、关注事件
- 使用 THEME 黑金配色
- 宽度与导航栏保持一致
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
|
2025-12-22 18:59:09 +08:00 |
|
|
|
39cbf98d6a
|
update watchlist
|
2025-12-15 18:40:11 +08:00 |
|
|
|
50d881b889
|
update watchlist
|
2025-12-15 18:35:59 +08:00 |
|
|
|
8221180200
|
update watchlist
|
2025-12-15 18:28:35 +08:00 |
|
zdl
|
a9c21d8478
|
fix(UI): Profile 取消按钮样式、HotEvents 轮播箭头、Dashboard 按钮优化
- Profile: 取消按钮添加深色主题样式 (color, borderColor, hover)
- HotEvents: 轮播箭头添加 user-select: none 防止连续点击选中文本
- Dashboard: "查看更多"按钮改为图标按钮 (IconButton + FiPlus)
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
|
2025-12-15 15:20:02 +08:00 |
|
zdl
|
b74d88e592
|
fix: 适配 watchlist 新数据结构
- CompactSearchBox: 改用 Redux 获取股票列表
- useWatchlist: 适配 { stock_code, stock_name }[] 结构
- Center: 修复 watchlist key + H5 评论 Badge 溢出
|
2025-12-05 17:23:51 +08:00 |
|
zdl
|
c9801014c7
|
style: Dashboard Center 页面 H5 响应式适配
|
2025-12-05 14:42:37 +08:00 |
|
zdl
|
f64c1ffb19
|
feat: 事件详情页 URL ID 加密,防止用户遍历
- 新增 idEncoder.ts 工具:使用 Base64 + 前缀混淆加密 ID
- 路由改为查询参数形式:/event-detail?id=xxx
- 更新所有入口使用 getEventDetailUrl() 生成加密链接
- 兼容旧链接:纯数字 ID 仍可正常访问
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
|
2025-12-04 18:26:01 +08:00 |
|
|
|
4ba6fd34ff
|
update pay ui
|
2025-12-02 19:44:46 +08:00 |
|
|
|
2b3700369f
|
update pay ui
|
2025-12-02 17:55:01 +08:00 |
|
|
|
f60c6a8ae9
|
update pay ui
|
2025-12-02 17:36:35 +08:00 |
|
|
|
f24f37c50d
|
update pay ui
|
2025-12-02 17:30:52 +08:00 |
|
zdl
|
d69a32a320
|
fix: 修复个人中心不显示新发表的评论问题
问题描述:
- 用户在事件中心发表评论后,打开个人中心看不到新评论
- 个人中心"我的评论"区域始终为空或显示旧数据
根本原因:
- 项目存在两套独立的评论系统:
1. 旧系统(EventComment 表)- 个人中心查询此表
2. 新系统(Post 表)- 事件中心写入此表
- 创建评论时写入 Post 表,但个人中心查询 EventComment 表
- 两个表完全独立,数据不同步
修复方案(统一到 Post 系统):
1. 后端新增 API:GET /api/account/events/posts
- 查询 Post 表中当前用户的所有评论
- 返回格式完全兼容旧 EventComment.to_dict()
- 新增 event_title 字段(改进点,旧 API 没有)
2. 前端修改 API 调用:Center.js
- 将 /api/account/events/comments 改为 /api/account/events/posts
- 无需修改数据渲染逻辑(格式兼容)
修改文件:
- app.py (第 4144-4187 行) - 新增 get_my_event_posts API
- 查询 Post 表(user_id 过滤 + 按时间倒序)
- JOIN 查询关联的 Event(获取 event_title)
- 返回兼容格式:author(字符串), likes, created_at, event_title
- src/views/Dashboard/Center.js (第 105 行) - 修改 API 调用路径
- 修改前:GET /api/account/events/comments
- 修改后:GET /api/account/events/posts
数据兼容性:
- author 字段:字符串类型(与旧 EventComment 一致)
- likes 字段:映射自 likes_count
- created_at 字段:ISO 8601 格式
- 新增:event_title 字段(个人中心可显示评论关联的事件)
修复效果:
- 用户在事件中心发表评论 → 立即在个人中心看到新评论 ✅
- 评论显示完整信息:内容、时间、关联事件标题 ✅
- 前端无需修改渲染逻辑(完全兼容) ✅
🤖 Generated with Claude Code
|
2025-11-17 11:25:18 +08:00 |
|
zdl
|
5d8ad5e442
|
feat: bugfix
|
2025-10-31 10:33:53 +08:00 |
|
zdl
|
78e4b8f696
|
feat: Retention(留存)分析
1. 最受欢迎的功能
- 哪些功能用户使用最频繁?
- 新闻、事件、个股、模拟盘的使用对比
2. 用户行为路径
- 用户从哪里进入?
- 在每个页面停留多久?
- 从哪个环节流失?
3. 内容偏好
- 什么类型的新闻最受欢迎?
- 用户关注哪些行业?
- 哪些事件获得最多关注?
Revenue(收入)转化
1. 付费转化漏斗
个人中心查看 →
自选股/关注事件使用 →
订阅页面查看 →
升级按钮点击 →
(付费转化)
2. 模拟盘转化分析
模拟盘进入 →
搜索股票 →
下单操作 →
持续使用 →
(付费转化)
|
2025-10-29 11:48:29 +08:00 |
|
zdl
|
6f34cab6d1
|
feat: 优化依赖
|
2025-10-24 17:18:08 +08:00 |
|
zdl
|
6c96299b8f
|
feat: 添加合规
|
2025-10-20 21:25:33 +08:00 |
|
zdl
|
d695f8ff7b
|
feat: 登陆状态调整
|
2025-10-20 13:58:07 +08:00 |
|
zdl
|
44f9fea624
|
feat: 添加导航徽章
|
2025-10-20 13:28:37 +08:00 |
|
zdl
|
47fcb570c0
|
feat: 日志优化
|
2025-10-18 17:33:15 +08:00 |
|
zdl
|
36558e0715
|
feat: 1. 基础设施(2个文件)
- ✅ src/utils/logger.js - 统一日志工具
- API 请求/响应/错误日志
- 组件错误/警告/调试日志
- 开发环境详细分组,生产环境仅错误
- ✅ src/utils/axiosConfig.js - axios 全局拦截器
- 自动记录所有请求/响应
- 统一 baseURL 和 credentials 配置\
2. 核心文件重构(8个文件)\
AuthFormContent.js | ✅ 保留登录/注册成功 toast❌ 移除验证码发送 toast✅ 添加 .trim()✅ 所有 API 添加 logger | ✅ 完成 |
| Center.js | ❌ 移除所有 toast✅ 移除 toast 依赖✅ 添加错误 logger | ✅ 完成 |
| Community/index.js | ❌ 移除所有 toast 和导入✅ 移除 toast 依赖✅ 添加错误 logger | ✅ 完成 |
| authService.js | ✅ 统一 apiRequest 函数✅ 所有请求自动记录❌ 移除 console.error | ✅ 完成 |
| eventService.js | ✅ 重构 apiRequest✅ 所有方法添加 logger❌ 移除 console.log/error | ✅ 完成 |
| stockService | ✅ 所有方法添加 logger❌ 移除 console 输出 | ✅ 完成 |
| indexService | ✅ 添加 logger❌ 移除 console 输出 | ✅ 完成 |
| AuthContext.js | ✅ 保留注册/登出成功 toast❌ 移除验证码发送 toast✅ 所有方法添加 logger | ✅ 完成 |\
3. Mock 数据完善(\
Mock 数据完善(1个文件)
- ✅ src/mocks/handlers/account.js - 个人中心 Mock
- ✅ 自选股列表 (GET /api/account/watchlist)
- ✅ 实时行情 (GET /api/account/watchlist/realtime)
- ✅ 添加自选股 (POST /api/account/watchlist/add)
- ✅ 删除自选股 (DELETE /api/account/watchlist/:id)
- ✅ 关注的事件 (GET /api/account/events/following)
- ✅ 事件评论 (GET /api/account/events/comments)
- ✅ 当前订阅 (GET /api/subscription/current)\
4. API 文档(1个文件)
- ✅ API_ENDPOINTS.md - 完整 API 接口文档
- 认证相关: 4个接口
- 个人中心: 12个接口
- 事件相关: 12个接口
- 总计: 28+个接口\
5。Toast 策略执行:
- ✅ 保留: 3种(登录成功、注册成功、登出成功)
- ❌ 移除: 15+处(验证码、数据加载等)
Logger 替换:
- ✅ console.log → logger.debug/logger.info
- ✅ console.error → logger.error\- console.warn → logger.warn
Mock 数据:
已有: auth.js, event.js, users.js, events.js
新增: account.js(7个新接口)
6.用户体验改进
静默优化:不再弹出验证码发送成功提示(静默处理)不再弹出数据加载失败提示(console 记录) 仅在关键操作显示 toast(登录/注册/登出)
开发体验: Console 中有清晰的分组日志(🌐 🔴 ⚠️ 等图标), 所有 API 请求/响应自动记录,错误日志包含完整上下文和堆栈,Mock 服务完善
测试场景: 登录/注册 - 仅显示成功 toast,验证码静默发送 个人中心 - 加载自选股、实时行情、关注事件 社区页面 - 加载事件列表、Console 查看
9. 添加日志:API Request / ✅ API Response / ❌ API Error
|
2025-10-18 07:48:00 +08:00 |
|
|
|
8107dee8d3
|
Initial commit
|
2025-10-11 12:02:01 +08:00 |
|