第12组 · 黄扬轩 · 第1次评审详情 - sebestp/coursewise GitHub Wiki
- 报告期次:第1次 | 报告日期:2026-10-08 | 项目组号:第12组 | 项目名称:在线购物系统
- 已完成工作:上传04模块 trades.py(合并请求 #3,已合入 main)
- 成果物:交易与冻结管理成果
负责人真实姓名:黄扬轩;GitHub账号:aixuan1206。2026-10-08 通过 PR #3 本人上传 trades.py(提交 4e8c561,分支 feature/04-trade-freeze-management);个人完成任务清单与测试结论仍待本人核实填写。
本次上传文件: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 的真实结果(含环境版本、命令与日志)、前端联调效果、运行录屏。
(评审后填写)