1.6 KiB
1.6 KiB
双部门样本接收拆分 Implementation Plan
For agentic workers: REQUIRED SUB-SKILL: Use superpowers:subagent-driven-development (recommended) or superpowers:executing-plans to implement this plan task-by-task.
Goal: 将样本接收拆分为质检域(biz_sample_reception)与生产域(biz_sample_production_reception),两侧互读互斥写;质检去掉体积/净重。
Architecture: 新表 1:1 关联质检接收;生产 API /production-sample-receptions;前端双区块只读组件 + 生产工单专用填写弹窗。
Tech Stack: FastAPI + SQLAlchemy + Vue 3 + Element Plus
Spec: docs/superpowers/specs/2026-06-29-dual-sample-reception-design.md
Task 1: 数据库与 Model ✅
docs/sql/migrate_sample_production_reception.sqlbackend/app/models/models.py→BizSampleProductionReception
Task 2: 生产接收 CRUD/API ✅
backend/app/crud/sample_production_reception.pybackend/app/api/sample_production_reception.py- 注册
main.py/api/__init__.py
Task 3: 质检 API 瘦身 + 聚合读 ✅
_reception_to_dict移除 volumeMl/netWeightGproductionReception挂载至详情/列表/协议样本
Task 4: 前端生产弹窗 + 质检页 ✅
SampleReceptionDialog.vue重写sample-reception/index.vue去体积净重 + 生产只读
Task 5: 只读展示 ✅
sample-reception-dual-readonly-panel- 协议/捐赠查看、工单/任务/放行查看弹窗
部署前
- 执行
docs/sql/migrate_sample_production_reception.sql - 重启 backend
- 验证:质检接收 → 生产工单填写 → 双方只读互见