feat: mioitem 返回 defect/defect_name/okcate 并优化 mio 详情 items 序列化 #4

Merged
caoqianming merged 2 commits from dev_cqm into master 2026-05-12 09:28:25 +08:00

2 Commits

Author SHA1 Message Date
caoqianming a0739a9351 Merge branch 'master' into dev_cqm 2026-05-12 09:28:06 +08:00
caoqianming bb64c89d76 feat: mioitem 返回 defect/defect_name/okcate 并优化 mio 详情 items 序列化
- MIOItemSerializer 新增 defect/defect_name/okcate,取数优先级 wm.defect>mb.defect,
  与 services.py 中 do_out/do_in 的取数逻辑保持一致
- MIOItemViewSet.select_related_fields 加 wm__defect/mb__defect 消除 N+1
- MIODetailSerializer.items 改用 MIOItemForMioDetailSerializer 轻量序列化器
  (仅含前端实际消费的 id/mio/material/material_/batch/count/pack_index),
  避开 MIOItemSerializer 中 assemb/mioitemw 的 N+1
- MIOViewSet.retrieve 时挂 Prefetch('item_mio') 进一步减少查询

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-12 09:23:22 +08:00