第12组 · 黄扬轩 · 第1次评审详情 - sebestp/coursewise GitHub Wiki

黄扬轩 · 第1次评审详情(第12组 · 组员)

基本信息

  • 报告期次:第1次 | 报告日期:2026-10-08 | 项目组号:第12组 | 项目名称:在线购物系统

工作任务与成果物

成果物 · 交易与冻结管理成果

交易与冻结管理成果

负责人真实姓名:黄扬轩;GitHub账号:aixuan1206。2026-10-08 通过 PR #3 本人上传 trades.py(提交 4e8c561,分支 feature/04-trade-freeze-management);个人完成任务清单与测试结论仍待本人核实填写。

main 分支源码 · 分支源码 · 本人PR #3

本次上传文件:04_交易与冻结管理/trades.py(63 行)。PR #3 已于 2026-10-07 由 aixuan1206 合入 main(提交 4e8c561),04 模块源码位于 main 分支;README 未随本次上传。《仓库上传快照》与第1次阶段性评审报告已同步更新。源码上传不等于功能验收,本页暂不宣称个人任务100%完成。

对外接口
方法 路径 权限 说明
GET /api/trades 需卖家登录 返回当前在售/冻结商品、全部购买意向、交易事件流水
POST /api/trade 需卖家登录 action 取 freeze/success/failure,更新商品与意向状态并记录流水
关键函数
  • list_trades(request, data):require_seller 鉴权后查询 products(status 为 active/frozen)、intents 关联商品名、trade_events 关联商品名与买家名,按 id 倒序输出。
  • update_trade(request, data):校验 product_id 与 action;freeze 仅在商品为 active 且所选意向为 pending 时置 status='frozen'、selected_intent_id 并令该意向为 selected;success 置商品 sold、写入 sold_at,选中意向 completed、其余 closed;failure 恢复商品 active、清空选中意向并令其回到 pending。全部写操作在 connection(write=True) 事务内完成,最后写入一条 trade_events。
  • ROUTES:注册上述两个路由,由 05 模块 server.py 合并进统一入口。
依赖与待补证据
  • 依赖 05 模块的 database.connection(products/intents/trade_events 表)与 security.require_seller;server.py 已把 04_交易与冻结管理 加入 sys.path 并挂载 trades.ROUTES,故目录名需与约定保持一致。
  • 待补:README、按 05 模块入口启动后的实际接口调用与测试用例 T07/T08/T09 的真实结果(含环境版本、命令与日志)、前端联调效果、运行录屏。

教师点评

(评审后填写)

⚠️ **GitHub.com Fallback** ⚠️