Files
mp-pilates/docs/flash-sale-removal.md
2026-09-10 11:33:19 +08:00

1.8 KiB

移除秒杀功能

按业务调整下线限时秒杀活动。前后端代码、共享类型、Prisma schema 与迁移均已同步清理。

清理范围

内容
后端模块 packages/server/src/flash-sale/(service、controller、admin controller、dto、测试)
调度任务 SchedulerService.handleExpireFlashSaleReservations 及其依赖注入
支付流程 PaymentServiceflashSaleOrder 标记为 PAID 的分支
前端页面 pages/flash-sale/detail.vuepages/admin/flash-sales.vue
前端组件 components/FlashSaleSection.vue
前端状态 stores/flash-sale.ts
前端入口 pages/admin/index.vue 秒杀管理菜单与对应样式
首页 pages/home/index.vueFlashSaleSection 引用
共享类型 shared/src/types/flash-sale.ts,enums.tsFlashSaleStatusFlashSaleOrderStatus,以及 index.ts 的 re-export
数据库 Prisma 删除 FlashSaleFlashSaleOrder 模型、相关枚举与 Order.flash_sale_id 字段

数据库迁移

新增 packages/server/prisma/migrations/20260910030338_drop_flash_sale/migration.sql。 执行 pnpm prisma migrate deploy 后以下内容会被移除:

  • flash_salesflash_sale_orders 两张表
  • orders.flash_sale_id 列与外键
  • FlashSaleStatusFlashSaleOrderStatus 枚举

迁移以 MySQL 方言编写;SQLite 开发环境由 Prisma shadow database 自动重建。

验证

pnpm build:shared
pnpm build:server
pnpm test         # 包含 payment / scheduler 套件

回退说明

回退需要还原 schema 与源码,本项目不保留 git 自动恢复外的额外兜底。如需重新启用秒杀,按 git 历史恢复即可,并运行 pnpm prisma migrate reset 重新初始化数据库。