yml
|
6a87fe5228
|
feat: 完善 Rock 发货异常闭环与绑定判定
|
2026-11-14 23:58:57 +08:00 |
|
zhaoxing
|
a9473990be
|
refactor: 移除 Rock 发货处理中状态,新增异常派生筛选标记
- 新增迁移 028:历史 redeeming 回退为 bound,重建 pending 部分索引
- pending 语义改为 bound + redeem_requested_at 标记,不再写状态与状态日志
- 新增 anomaly 虚拟筛选项:基于状态日志派生异常标记,不改状态、不落库
- 状态列追加「⚠️ 异常」标签,统计新增 anomaly_stock
- 清理前后端 redeeming 相关分支与文案
|
2026-11-14 15:40:19 +08:00 |
|
zhaoxing
|
f0dea6a583
|
feat: Rock 兑换支持上游异步 pending 并记录发货全链路报文
问题:上游 0666.pro 兑换返回 HTTP 200 + status=pending(官方处理中),
旧逻辑仅凭「没有 error 字段」就判定成功并写 redeemed 终态,导致本地显示
已发货而上游仍是 bound,且 redeemed 为硬终态无法自愈。
后端:
- RedeemSkin 改为三态判定(success / pending / failed),不再无 error 即成功
- 新增 redeeming「发货处理中」状态;pending 不写 redeemed_at/fulfill_id
- 成功落库前二次 refresh 确认上游 redeemed 或 redeemed_at 才置终态
- 新增确认 worker:20s 轮询、30s→5m 指数退避、110001 全局冷却 60s、
15 分钟未确认仅告警不回退,确认后同步订单为 delivered 并触发回调
- pending 期间禁止重复兑换,订单保持 delivering,不下发发货成功回调
- 新增 rock_delivery_logs 表与记录器:入站参数、内部状态、上游请求/响应
原文全部留档,保留 180 天
- 分配/绑定校验/刷新/导入/删除/回收站/统计/客服查询全部适配 redeeming
- 迁移 026:redeeming 跟踪字段、部分索引与报文日志表
前端:
- Token 列表新增「发货处理中」筛选项、标签与超时提示
- 删除/回收站纳入 redeeming 危险状态
- 历史抽屉拆为「状态历史 / 发货报文」双页签,按 trace 展示报文详情
- 买家发货页在 pending 时提示官方处理中,无需重复提交
测试:新增 pending 不落终态、异常响应不误判、重复提交不重复兑换、
确认后同步订单、保持 pending 并退避 5 个用例;go build/vet/test 与
前端构建均通过。
|
2026-11-14 12:09:16 +08:00 |
|
zhaoxing
|
227d4b93ad
|
fix: Rock Token 超时按满 2/3 天判定并统一显示口径
|
2026-11-10 17:25:59 +08:00 |
|
zhaoxing
|
08884270b7
|
feat: 新增平台客服角色与客服查询菜单
|
2026-11-09 18:18:19 +08:00 |
|
zhaoxing
|
38cbb37a08
|
feat: Rock 回库支持上游校验与强制释放,新增 Token 状态历史
|
2026-11-09 13:38:57 +08:00 |
|
zhaoxing
|
f38f11ae96
|
feat:刷新时上游异常/卡密不存在自动标记已上报失效
|
2026-11-09 11:18:29 +08:00 |
|
zhaoxing
|
61d2aa47ea
|
feat:一键刷新与自动刷新覆盖绑定错误/使用超时/绑定超时
|
2026-11-08 18:56:54 +08:00 |
|
zhaoxing
|
51dcb9de5a
|
feat:Rock刷新去UID拦截,新增绑定错误自动刷新与使用/绑定超时预警
|
2026-11-08 18:03:48 +08:00 |
|
zhaoxing
|
1dba8e4c2e
|
feat:备注图标支持悬浮预览备注内容
|
2026-11-08 15:09:23 +08:00 |
|
zhaoxing
|
46ac332502
|
feat:Rock Token凭证列增加复制预览快捷图标
|
2026-11-08 14:48:11 +08:00 |
|
zhaoxing
|
852debb635
|
fix:Rock Token列表ID合并与列宽优化
|
2026-11-08 14:42:42 +08:00 |
|
zhaoxing
|
d6530b47f4
|
feat:rock增加手动刷新Token按钮
|
2026-11-03 12:37:05 +08:00 |
|
zhaoxing
|
f69cdc6d8e
|
feat:0666账号密码自动登录刷新Token
|
2026-11-03 12:13:39 +08:00 |
|
zhaoxing
|
4dbec33dbd
|
fix:自动补货更新
|
2026-11-02 18:30:51 +08:00 |
|
zhaoxing
|
ce8d99ad95
|
fix:复制按钮只复制兑换码和提取码
|
2026-10-31 17:13:48 +08:00 |
|
zhaoxing
|
8fcc486c5d
|
fix:复制按钮只复制兑换码和提取码
|
2026-10-31 17:02:21 +08:00 |
|
zhaoxing
|
909867b9fb
|
feat:rock增加软删除和恢复删除
|
2026-10-31 16:48:47 +08:00 |
|
zhaoxing
|
2d1ff1b520
|
feat:跳转上游不限状态显示
|
2026-10-31 14:26:12 +08:00 |
|
zhaoxing
|
c50f471f64
|
feat:未绑定token导入
|
2026-10-31 14:03:04 +08:00 |
|
zhaoxing
|
8f30e6fe57
|
feat:采购日志
|
2026-10-31 12:24:00 +08:00 |
|
zhaoxing
|
a7f8f9c639
|
feat:2、数据显示优化
|
2026-10-30 16:13:39 +08:00 |
|
zhaoxing
|
ea46700fe2
|
feat:2、数据显示优化
|
2026-10-30 10:30:07 +08:00 |
|
zhaoxing
|
1a9ff5d03d
|
feat:2、刷新按钮位置优化
|
2026-10-29 18:33:47 +08:00 |
|
zhaoxing
|
b27e128c5b
|
feat:2、刷新绑定信息,操作加一个刷新绑定状态的按钮,3、绑定错误有提示,手动上报异常,拿到包ID做链接跳转(定位)
|
2026-10-29 18:15:40 +08:00 |
|
zhaoxing
|
8494fabc82
|
feat:自动补货/手动采购逻辑修改:批量获取-》打包-》获取Token列表
|
2026-10-29 16:05:39 +08:00 |
|
yml2213
|
e293cebaf5
|
feat(rock): 发货记录表格新增时间与备注列并支持上报失效联动
- 做了什么:
1. 数据库新增 013_rock_tokens_remark.sql 迁移,rock_tokens 表补充 remark 字段并在 ListTokens 中支持备注模糊检索;
2. 后端扩展 UpdateTokenRemark、MarkTokenAbnormal 接口,同时优化 ResetMismatchToken 支持 mismatch 与 abnormal 状态的解冻重置;
3. 前端 RockTokenTable 新增「流转时间」列(入库/绑错/发货/绑定/提货)与「备注」列(TokenRemarkCell 浮窗快捷预设选择与自定义输入);
4. 快捷选择「已上报」或点击「上报失效」自动将链接标记为 abnormal 作废,从可用库存池中剔除,防止被新订单领走;
5. 优化操作列与顶部筛选栏:mismatch 增加「上报失效」与警示重置;abnormal 状态明确显示已失效并提供强制恢复;筛选栏新增「已上报失效」Tab。
- 为什么:
解决绑定错误上报 0868 上游后无法记录备注、且原「解冻重置」容易误将已作废卡密放回可用库存池导致后续订单报错的问题。
- 验证方式:
1. 后端单元测试 TestRockService_TokenRemarkAndAbnormal 与 TestRock 测试集通过;
2. make fmt、go vet 通过;
3. 前端 oxlint 检查通过 (0 errors, 0 warnings),npm run build 生产构建通过。
|
2026-10-08 20:13:25 +08:00 |
|
yml2213
|
b1089f37b2
|
refactor(web): 拆分 PlatformRock 大屏为容器 + 9 个子组件(1306 → 最大 335 行)
- PlatformRock.tsx 335 行:保留全部 state、loadData/loadTokens、useEffect、
handler 与顶层布局;默认导出名不变,App.tsx 的 lazy 导入未改
- platformRock/ 子目录:tokenColumns 329、RockStrategyCard 267、
PurchaseTokenModal 183、RockTokenTable 156、RockMetricCards 124、
VoucherPreviewModal 95、RockTokenFilterBar 76、UidEditModal 47、types.ts 6
state 归属与更新时机、请求次数与参数、useEffect 依赖语义均未改变;子组件 props
显式声明类型,无 any;行级异步 handler 随表格下沉,state setter 经显式类型 props 传入。
验证:
- SSR 快照 renderToString 拆分前后字节一致(40920 bytes)
- jsdom 交互差分:拆分前后 23 个检查点的 DOM 快照与 API 调用日志完全一致
(覆盖采购、UID 修正、解冻、释放、熔断、筛选/搜索/翻页、保存配置、连通性测试)
- 原文件应保留的 230 行代码逐字命中
|
2026-10-06 19:43:29 +08:00 |
|