Files
ops2/.workbuddy/memory/2026-04-13.md
T
2026-04-13 20:01:40 +08:00

1.6 KiB
Raw Blame History

2026-04-13

ops2 项目采购模块改造

为采购订单增加状态管理功能,涉及前后端多处改动:

后端改动

  • TabPurchaseOrder 新增 OrderStatus 字段(pending/ordered/arrived/received),默认 pending
  • TabPurchaseOrder 新增 UpdatedAt 字段(GORM autoUpdateTime
  • TabPurchaseCosts 新增 CurrencyType1-CNY 2-MOP 3-HKD 4-USD)和 CostType1-单价 2-运费)
  • 新表 TabPurchaseCommit:记录每次状态变更(Action: create/create_status)、旧状态、新状态、评论、操作IP
  • CostItem 前端结构体 CurrencyTypeType 从 string 改为 int(与数据库一致)
  • /purchase/getorder 新增返回 commits(状态变更记录列表)
  • /purchase/updatestatus 新接口:更新订单状态,可选附带 comment,写入 TabPurchaseCommit + TabPurchaseLog
  • addorder 创建时自动写入第一条 commit(状态 pending
  • 状态值白名单校验:只允许 pending/ordered/arrived/received

前端改动

  • api/purchase.js 新增 updateOrderStatus(id, status, comment) 方法
  • PurchaseList.vue 列表页去掉假数据列,显示真实标题/备注/创建时间,状态用彩色标签(黄-待处理、蓝-已下单、紫-已到达、绿-已收件)
  • ShowOrder.vue 详情页新增:状态快捷切换按钮(四个状态一键切换)、状态变更 commit 历史时间线(竖排列表,含状态标签+时间+评论)
  • i18n 同步新增 8 个翻译 key

注意事项

  • 重启后端后 GORM AutoMigrate 会自动新增字段和表,无需手动 SQL
  • 前端 CostItem 的 CurrencyType/Type 改为 int,与后端一致