已完成用户APP首期功能开发
交付用户端首期页面、配套接口、后台资源及测试文档。用户APP构建、静态分析和三个管理后台构建通过;完整测试仍有2项失败,后端模型注释检查未通过,详见交付记录。
This commit is contained in:
45
docs/开发日志_订单支付确认_20260911.md
Normal file
45
docs/开发日志_订单支付确认_20260911.md
Normal file
@@ -0,0 +1,45 @@
|
||||
# 订单支付确认开发日志
|
||||
|
||||
操作时间:2026-09-11 20:55:00
|
||||
操作类型:新增/扩展
|
||||
影响模块:用户端订单、钱包支付、气瓶订单、视觉验收
|
||||
|
||||
## 操作前状态
|
||||
|
||||
订单动作使用底部菜单直接选择渠道,没有图19独立支付确认页。气瓶订单支付只处理外部渠道,商城余额支付没有写入统一支付单,退款链路无法找到该支付事实。
|
||||
|
||||
## 具体操作
|
||||
|
||||
- 新增`/payment/:business/:identity`,同时读取本人订单详情和钱包,展示应付金额、商品快照、订单号、支付方式、安全验证和金额明细。
|
||||
- 余额支付使用六位脱敏圆点输入,扣款前再次确认订单号、渠道和金额;未知结果保留原幂等请求号。
|
||||
- 气瓶和商城余额支付均在数据库事务内锁定订单与钱包,校验支付密码,写入订单状态、支付单和钱包记录。
|
||||
- 订单不在可支付状态时禁用底部按钮。优惠券无服务端接口,保留位置并显示“暂未开放”及原因弹层。
|
||||
- 支付页复用服务端充值渠道就绪配置:当前Web环境未配置商户证书时,微信和支付宝直接显示“暂未开放”并禁用,不再允许用户提交后才得到配置错误。
|
||||
- 气瓶订单使用真实钢瓶位图;服务端订单快照有图片时优先显示快照,普通商城商品缺图时保持缺图图标,不伪造商品照片。
|
||||
- 按最新图19重校卡片高度、支付方式图标/单选位置、密码圆点、订单明细和固定底部按钮。
|
||||
|
||||
## 代码变更
|
||||
|
||||
- `apps/user_app/lib/ui/features/orders/payment_confirmation_page.dart`:支付页与交互。
|
||||
- `apps/user_app/lib/ui/core/payment_pin_field.dart`:共用六位支付密码组件。
|
||||
- `apps/user_app/lib/app/router.dart`、`apps/user_app/lib/ui/features/orders/order_action_handler.dart`:支付路由与订单入口。
|
||||
- `apps/user_app/lib/data/repositories/client_repository.dart`:支付密码、商城/气瓶参数校验与余额结果校验。
|
||||
- `backend/api/internal/logic/client/user/gasorder.go`、`shop.go`:原子余额支付、幂等重试和支付事实。
|
||||
- `apps/user_app/test/ui/payment_confirmation_page_test.dart`、`backend/api/internal/logic/client/user/wallet_order_payment_test.go`:页面和重试测试。
|
||||
- `apps/user_app/test/support/a1_fixture.dart`:视觉夹具提供明确的渠道就绪状态,不访问真实支付渠道。
|
||||
- `apps/user_app/tool/a1_visual_test.dart`、`scripts/compare-user-app-a1.ps1`:图19多尺寸截图和并排对照。
|
||||
|
||||
## 验证结果
|
||||
|
||||
- Flutter analyze通过,Flutter全量171项通过。
|
||||
- 图19在320/360/390/430宽、1.0/1.3文字缩放共8项通过;当前视觉集合共184项通过。
|
||||
- Go全量`go test ./...`、`go vet ./...`和API构建通过。
|
||||
- Flutter Web Release构建通过,API使用仓库现有远程PostgreSQL/Redis配置重启成功。
|
||||
- 内置浏览器展示远程真实订单金额、钱包余额、全部分组和优惠券未开放弹层。
|
||||
- 2026-09-11 23:55再次在内置浏览器打开真实已取消订单`EC1788842040900189900`:金额与余额来自远程数据,微信/支付宝显示“暂未开放”,优惠券弹层可见,订单不可支付按钮禁用;未产生订单或资金写入。
|
||||
|
||||
## 风险评估
|
||||
|
||||
- 当前测试账号无待付款订单,浏览器展示使用真实已取消订单,没有执行远程扣款。待付款成功路径由组件测试和服务端事务测试覆盖。
|
||||
- 微信、支付宝仍依赖环境的真实商户配置与回调;页面按服务端配置状态判定是否可选,尚未做真实渠道回调验收。
|
||||
- 优惠券缺少接口和后台配置,当前只显示首期缺失状态,不计为完成。
|
||||
Reference in New Issue
Block a user