WrBug
|
40081c2464
|
feat: 为所有数值显示添加千分位分隔符
- 重构 formatNumber 和 formatUSDC 函数,默认添加千分位分隔符
- 更新 Statistics.tsx、CopyTradingStatistics.tsx 等统计页面
- 更新 PositionList.tsx 持仓列表的数值显示
- 更新 AccountList.tsx 账户列表的余额显示
- 所有数值(金额、数量、价格等)现在默认显示千分位
- 示例:1234567.89 显示为 1,234,567.89
影响范围:
- 工具函数:utils/index.ts
- 统计页面:Statistics.tsx, CopyTradingStatistics.tsx
- 业务页面:PositionList.tsx, AccountList.tsx
Changes:
- Refactored formatNumber and formatUSDC to include thousand separators by default
- Updated statistics pages to display numbers with commas
- Updated position list and account list for better readability
- Example: 1234567.89 now displays as 1,234,567.89
|
2026-01-31 00:52:42 +08:00 |
|
WrBug
|
ae68a33c1e
|
fix: 优化仓位列表分页和统计功能
- 添加完整的分页功能,支持移动端和桌面端
- 移动端:自定义分页控件,支持切换每页 10/20/50 条
- 桌面端:使用 Ant Design Table 分页,支持切换每页 10/20/50 条
- 优化仓位统计逻辑,区分当前仓位和历史仓位
- 当前仓位:显示浮动盈亏和已实现盈亏
- 历史仓位:移除盈亏统计显示
- 筛选条件变化时自动重置到第一页
|
2026-01-16 10:14:54 +08:00 |
|
WrBug
|
9ed5190bfe
|
feat: 添加关键字过滤功能并优化市场 slug 处理
主要变更:
1. 关键字过滤功能
- 添加关键字过滤模式(白名单/黑名单/禁用)
- 支持关键字列表配置(JSON 存储)
- 实现关键字匹配逻辑(不区分大小写)
- 数据库迁移:V20__add_keyword_filter.sql
2. 市场 slug 优化
- 区分显示用 slug 和跳转用 eventSlug
- 添加 event_slug 字段到 markets 表(V21__add_event_slug_to_markets.sql)
- 从 events[0].slug 获取跳转用的 slug 并存入数据库
- 减少 API 请求,提高性能
3. UI 优化
- 将创建/编辑跟单配置改为 Modal 方式
- 删除独立的 CopyTradingAdd 和 CopyTradingEdit 页面
- 更新前端跳转逻辑,优先使用 eventSlug
4. API 响应优化
- 更新 MarketResponse 添加 events 字段
- 统一从 events[0].slug 获取跳转用的 slug
- 更新所有相关服务使用新的 slug 获取逻辑
|
2026-01-08 17:47:00 +08:00 |
|
WrBug
|
df272156cf
|
fix: 修复前端编译错误,移除不存在的 bestBid 属性引用
|
2026-01-02 00:24:31 +08:00 |
|
WrBug
|
f7f2411b9d
|
优化市场价格服务:移除降级查询逻辑,仅保留链上和订单簿查询
- 移除 CLOB Trades、Gamma Market Status、Gamma Market Price 查询逻辑
- 只保留链上 RPC 查询(市场结算结果)和 CLOB 订单簿查询
- 如果所有数据源都失败,抛出 IllegalStateException 异常
- 价格截位到 4 位小数(向下截断,不四舍五入)
- 移除未使用的导入和方法(MarketResponse, JsonUtils, OutcomeResult 等)
- 所有调用方都已正确处理异常,无需额外修改
|
2026-01-02 00:14:42 +08:00 |
|
WrBug
|
bfbbbdd1de
|
feat: 实现 Builder API Key 系统级配置和 Gasless 交易支持
- 新增系统配置表(SystemConfig)用于存储 Builder API Key
- 实现 Builder API Key 的前端配置页面
- 集成 Builder Relayer API 支持 Gasless 交易
- 在 API 健康检查中添加 Builder Relayer API 检测
- 移除前端 API 测试功能,简化配置页面
- 修复赎回仓位时的 Builder API Key 检查逻辑
- 更新错误处理,引导用户配置 Builder API Key
|
2025-12-06 23:10:26 +08:00 |
|
WrBug
|
41596887c9
|
feat: 改进下单错误处理和市场价格接口
- 修复市场价格接口:移除side参数,使用outcomeIndex判断方向
- 添加规范:禁止使用YES/NO字符串判断side,必须使用outcomeIndex
- 改进所有下单错误处理:所有错误都打印详细日志并存入数据库
- AccountService.sellPosition: 添加完整错误日志
- CopyOrderTrackingService.createOrderWithRetry: 所有失败都记录详细日志
- recordFailedTrade: 改进错误信息存储,包含堆栈信息
- PolymarketClobService.createSignedOrder: 添加完整错误日志
- 前端:更新市场价格接口调用,使用outcomeIndex替代side参数
- 清理:删除过时的i18n文档
|
2025-12-05 00:23:44 +08:00 |
|
WrBug
|
2ad558da36
|
feat: 优化账户管理和订单功能
- 重置密码后自动跳转到登录页,登录页添加重置密码入口
- 移除默认账户相关逻辑和UI
- 移除前端API Key自动获取提示文案(后端保留自动获取逻辑)
- 修复SELL订单takerAmount计算精度问题,使用精确计算避免精度丢失
- 修复导入账户页面白屏问题(缺少Alert组件导入)
- 持仓出售支持百分比模式,使用原始精度数据计算,支持小数百分比
- 优化订单金额计算逻辑,确保与SDK一致
|
2025-12-03 21:39:48 +08:00 |
|
WrBug
|
4d322424c1
|
feat: 统一USDC金额格式化,添加formatUSDC工具函数
- 新增 formatUSDC 函数:最多显示4位小数,自动去除尾随零(截断,不四舍五入)
- 统一导出所有工具函数到 utils/index.ts
- 替换所有页面中的USDC显示为 formatUSDC 函数
- TemplateList.tsx
- CopyTradingAdd.tsx
- PositionList.tsx
- AccountList.tsx
- AccountDetail.tsx
- OrderList.tsx
- Statistics.tsx
- 更新前端开发规范,添加USDC格式化规范说明
- 统一工具函数导入方式(从 ../utils 导入)
|
2025-12-01 23:22:18 +08:00 |
|
WrBug
|
914983acd7
|
feat: 实现通过代理钱包的仓位赎回功能
- 实现 Gnosis Safe EIP-712 签名逻辑
- 通过代理钱包的 execTransaction 调用 ConditionalTokens.redeemPositions
- 支持多账户批量赎回
- 前端添加赎回按钮和赎回详情弹窗
- 根据链上交易分析实现完整的 Safe 交易签名流程
|
2025-12-01 13:02:58 +08:00 |
|
WrBug
|
4e89f53c24
|
refactor: 重构市场数据接口和移除敏感信息
- 创建 MarketController,将市场相关接口从 AccountController 移出
- 添加 /api/copy-trading/markets/latest-price 接口供前端获取最新价
- 在 PolymarketClobService 中封装获取订单表和最优价的逻辑
- 支持多元市场(二元、三元及以上)的最优价获取
- 市价单价格添加调整系数(买单+0.01,卖单-0.02)
- 移除所有测试文件中的真实私钥和API凭证
- 更新前端API服务,添加markets相关接口
|
2025-11-29 11:08:01 +08:00 |
|
WrBug
|
b4fb16af9e
|
feat: 实现仓位出售功能并修复价格接口
- 新增仓位出售功能,支持市价和限价卖出
- 添加卖出模态框,包含订单类型选择、数量快捷按钮、限价输入
- 实现实时平仓收益计算和显示
- 修复价格接口:改用Gamma API获取价格(支持condition_ids参数)
- 优化价格选择逻辑:卖出使用bestBid,买入使用bestAsk
- 添加提交订单的加载状态和错误处理
- 优化UI提示,明确标注价格用途(买入/卖出参考)
|
2025-11-28 04:11:13 +08:00 |
|
WrBug
|
47357995af
|
重构 WebSocket 推送服务:统一使用 /ws 路径和 channel 订阅模式
- 后端重构:
- 统一 WebSocket 路径为 /ws,通过 channel 区分不同推送服务
- 实现 UnifiedWebSocketHandler 统一处理所有推送频道
- 实现 WebSocketSubscriptionService 管理订阅和推送
- 消息类型改为 int 类型(1:SUB, 2:UNSUB, 3:DATA, 4:SUB_ACK, 5:PING, 6:PONG)
- status 字段改为 int 类型(0: success, 非0: error)
- 移除旧的 /ws/positions 路由和 PositionWebSocketHandler
- 修复首推数据:订阅 position 频道后立即发送全量数据
- 前端重构:
- 实现全局 WebSocket 管理器(单例模式)
- 应用启动时立即建立全局 WebSocket 连接
- 实现 useWebSocketSubscription hook 用于订阅频道
- PositionList 完全依赖 WebSocket 推送,移除 HTTP 轮询
- 添加连接状态显示和自动重连机制
- 实现心跳保活机制(PING/PONG)
- 配置更新:
- 添加 WebSocket 相关配置项
- 更新 vite.config.ts 添加 /ws 代理配置
|
2025-11-27 02:56:24 +08:00 |
|
WrBug
|
f53ba1ca49
|
feat: 优化仓位管理页面功能和样式
- 添加卡片和列表视图切换功能
- 移动端支持卡片折叠/展开,默认只显示关键信息
- 历史仓位不显示盈亏和平仓收益
- 优化账户筛选:移除搜索功能,按账户名称排序
- 移动端强制使用卡片视图,隐藏视图切换按钮
- 优化侧边栏布局:固定高度,内容区域可滚动
- 优化当前仓位/历史仓位切换组件样式
- 修复账户筛选全部账户选项不生效的问题
|
2025-11-27 01:13:52 +08:00 |
|