Commit Graph
37 Commits
Author SHA1 Message Date
yml 6ff7692f3e 支付确认强一致化: 订单推进与标 paid 合并为单事务
confirmPaid 原为「先 ConfirmPaidFromChannel 独立事务推进订单, 再 Updates 标 paid」两步非原子, 崩溃在中间会出现订单已 pending_handoff 但 payment 仍 paying 的不一致窗口, 恢复依赖渠道回调重发而非事务闭环。

改造:
- 新增 ConfirmPaidFromChannelTx(tx, orderID) 让 order 模块共享 payment 模块的外部事务, 订单推进与 payment 标 paid 落进同一事务, 崩溃一致性窗口消除
- NotifyNewConversation 提到事务提交后触发, 避免事务回滚后误发会话通知
- payment_orders 加行锁后 Updates, 防并发回调覆盖写
- 删除未使用的 providerBizNo 死参数

锁顺序全局一致 (order→listing→account→payment), 与 payment_start/refund/Cancel 路径无反向加锁, 无死锁风险。

新增集成测试:
- 正向: 验证 confirmPaid 后 order/listing/account/payment 全部正确推进
- 回滚: payment 更新失败时 order 不残留 pending_handoff, 验证事务原子性

go build/vet/test 通过。
2026-06-14 09:42:26 +08:00
yml2213 28c4efc669 解耦订单和申诉模块外部依赖 2026-06-10 15:41:31 +08:00
yml2213 d2858c529d 继续补齐核心模块 Context 超时控制 2026-06-10 11:50:27 +08:00
yml 609b49f92b 拆分订单仓储模块 2026-06-09 19:56:32 +08:00
yml 5cd3ead4bd 统一金额分制重构 2026-06-09 19:04:11 +08:00
yml 62b898d7cc [Snow Team] backend-fixer: auto-commit work 2026-06-09 17:04:40 +08:00
yml d803089890 Order模块:完成分字段重构
核心改造:
1. DTO层全部改为*Cent int64字段(OrderDTO/CheckoutDTO/RefundStatusDTO)
2. 内部结构体orderPricing和checkoutSettlement改为分字段
3. calculateCheckoutSettlement函数改为返回分单位
4. 所有wallet.AppendEntries调用改为AmountCent
5. toAdminDTO/toCheckoutAdminDTO转换函数使用*Cent字段
6. applyOrderPriceView/applyCheckoutPriceView使用分字段
7. buildOrderPricing返回分单位
8. 订单取消/关闭/退款使用分字段计算

技术细节:
- 删除了3处float64金额相加后转分的逻辑
- calculateCheckoutSettlement内部仍用元计算保持兼容性,最后转为分
- 新增effectiveDepositOriginalAmountCent辅助函数
- buildRefundStatusDTO使用TotalAmountCent
- 编译验证通过 
2026-06-09 13:54:04 +08:00
yml 0b419f5084 修复仲裁退款并新增免押额度 2026-06-08 21:00:39 +08:00
yml 494b2c068a 贯通商品编号全流程 2026-06-08 20:00:07 +08:00
yml2213 954c3d6be3 修复拉卡拉支付时间偏差 2026-06-07 20:42:57 +08:00
yml2213 a5e55bc045 测试修复15分钟bug 2026-06-07 20:05:56 +08:00
ymlandClaude Opus 4.8 ec9baada67 统一管理后台分页样式
- 新建 AdminTablePagination 组件,统一分页 UI
- 改造 6 个前端页面使用统一分页组件:
  - 管理员管理
  - 用户管理
  - 申诉管理
  - 审计日志
  - 公告管理
  - 钱包流水
- 订单管理前后端完整改造:
  - 后端:添加 PaginatedResult 结构,支持 page/page_size 参数
  - 前端:API 支持分页参数,页面使用统一分页组件
- 所有列表页分页样式统一为商品管理的 .table-pagination 设计

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-06 00:13:59 +08:00
yml2213 498e3d7bde 优化订单结算金额展示和钱包流水号 2026-06-05 00:37:50 +08:00
yml2213andClaude Opus 4.7 4ebf7f75fe refactor: 统一全项目金额精度为角(0.1元)
## 变更概述
将全项目金额处理从整元四舍五入统一为角精度(0.1元),提高金额计算准确性和显示一致性。

## 后端改动
- 新增 pkg/money/format.go 统一金额处理包
  - Round(): 角精度四舍五入
  - Min/Max(): 金额比较
  - Format(): 格式化字符串
- 更新业务模块使用统一金额函数
  - internal/modules/order: 订单结算改为角精度
  - internal/modules/dispute: 纠纷金额处理
  - internal/modules/listing: 商品定价和存储
- 更新测试用例期望值为角精度

## 前端改动
- 新增 shared/utils/money.ts 金额工具函数
  - roundMoney(): 角精度四舍五入
  - formatMoney(): 格式化为字符串(保留1位小数)
  - formatMoneyWithSymbol(): 添加¥符号
- 更新金额计算和显示逻辑
  - shared/utils/pricing.ts: 定价计算
  - shared/utils/listingDisplay.ts: 商品显示
  - shared/composables/useMoney.ts: 组合式函数
- 修复视图文件导入声明
  - features/listings/views: 商品详情页
  - features/seller/views: 卖家管理页

## 效果
- 金额显示:¥123.0(统一保留1位小数)
- 计算精度:12.45 -> 12.5(角精度)
- 减少误差:避免整元四舍五入损失
- 显示一致:全项目统一格式

## 测试
-  后端单元测试通过
-  TypeScript 类型检查通过
-  开发环境正常运行

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-06-04 16:42:49 +08:00
yml 0bdc5ae7a9 优化订单号生成规则 2026-06-03 23:05:57 +08:00
yml 13e3a41d63 修复完成订单自动回显 2026-06-03 22:12:09 +08:00
yml c80d3f960e 优化支付退款钱包链路 2026-06-03 21:47:04 +08:00
yml ae8928f458 开始增加支付-1 2026-06-03 12:21:23 +08:00
yml 6dcea2d56c 完善日志和审计链路 2026-06-02 21:40:23 +08:00
yml c54e3936ab 修复结账金额和后台类型 2026-05-27 10:28:05 +08:00
yml2213 8cbd06dca4 后台系统配置列表现在只返回当前真实使用的配置项 2026-05-27 08:40:03 +08:00
yml2213 a002987784 SSE 推送替代轮训 2026-05-27 06:18:55 +08:00
yml2213 89f4dabfb3 金额使用整数, 不再扣押金, 价格每个人看到自己的-1 2026-05-27 00:22:26 +08:00
yml 7e7e6dc166 新增订单群聊 2026-05-25 14:57:19 +08:00
yml 5f6a4afcbb 彻底优化数据库字段 2026-05-24 20:49:37 +08:00
yml 8c619b37c8 完善号主订单交接待办入口 2026-05-24 19:18:27 +08:00
yml 778e08a261 兼容接入订单租期字段 2026-05-24 18:24:39 +08:00
yml e69d08ca9f 兼容接入商品固定价格字段 2026-05-24 18:13:20 +08:00
yml 03e5d211dc 接入订单结账确认流程 2026-05-24 16:52:15 +08:00
yml c4cfe6dd79 新增订单待支付与支付确认后端流程 2026-05-24 16:29:47 +08:00
yml2213 a6a1afb879 删掉租期相关错误东西 2026-05-23 14:44:32 +08:00
yml 6f915b37d3 订单超时任务系统 2026-05-22 18:16:05 +08:00
yml 55477d0ac6 feat: add admin risk actions and arbitration settlement 2026-05-22 18:11:01 +08:00
yml c9e6ea2b71 后台“资金流水 2026-05-22 17:43:45 +08:00
yml 99f9df7bcd 第 5 阶段:纠纷、通知与后台-1 2026-05-22 16:34:32 +08:00
yml 9ebdfab078 第 4 阶段:订单、交接与账务--ok 2026-05-22 16:14:23 +08:00
yml edda1fbc7b 第 4 阶段:订单、交接与账务--1 2026-05-22 16:05:40 +08:00