[Issue #13] 场馆硬删除功能 + P0 模板不存在防护 #14
Loading…
Reference in New Issue
There is no content yet.
Delete Branch "%!s(<nil>)"
Deleting a branch is permanent. Although the deleted branch may exist for a short time before cleaning up, in most cases it CANNOT be undone. Continue?
概述
场馆/座位模板的删除功能目前是软删除(status→0),需要实现真删除,同时修复模板被删除后商品编辑/保存时的 Fatal Error。
任务清单
P1-A: GetGoodsViewData fallback(防御性编程)
文件:service/SeatSkuService.php,约 line 358-365
模板不存在时,检查 template_snapshot 并从中恢复数据。
P1-B: AdminGoodsSaveHandle 检测(阻止脏数据)
文件:hook/AdminGoodsSaveHandle.php,约 line 68-72
模板不存在且没有 snapshot → 拒绝保存(code -401)。
P2-A: 真删除 API
文件:admin/Admin.php,SeatTemplateDelete / VenueDelete
hard_delete=true 时先检查商品关联,无关联才执行 DELETE。
P2-B: 按钮改名 + 删除确认弹窗
view/venue/list.html / view/seat_template/list.html
"删除"按钮改为"禁用/启用",新增"删除"按钮(二次确认)。
参考资料
评估报告:reports/venue-hard-delete-evaluation.md