市场和质检,任何一边废弃了样本,另外一边也自动废弃 #31

Closed
opened 2026-11-05 01:31:01 +00:00 by cykj · 4 comments
Owner

市场部和质检部,在系统中点击废弃后,另外一边自动转换为废弃状态,不需要人工再次点击废弃按钮。(市场和质检,任何一边废弃了样本,另外一边也自动废弃)
比如,质检部的老师在接收样本时,选择了废弃,在市场部那边,协议状态自动变更为【已废弃】状态,不需要市场部老师额外再废弃这份协议。

市场部和质检部,在系统中点击废弃后,另外一边自动转换为废弃状态,不需要人工再次点击废弃按钮。(市场和质检,任何一边废弃了样本,另外一边也自动废弃) 比如,质检部的老师在接收样本时,选择了废弃,在市场部那边,协议状态自动变更为【已废弃】状态,不需要市场部老师额外再废弃这份协议。 <!-- ticket-system:456538d5-ef42-4f1e-a29b-773455a5d5b1 -->
cykj added the ai-ready label 2026-11-05 01:31:01 +00:00
Author
Owner

web端和小程序端 ,协议单【包括 细胞存储、科研捐赠】 只要变成了 【已作废】的状态。 那么协议单中的样本接收的状态自动变成废弃。

当协议单中的所有的样本接收选择了 废弃(或者拒收)。 那么协议单的状态 变成 已作废, 作废类型为“实验室废弃“ 。

web端和小程序端 ,协议单【包括 细胞存储、科研捐赠】 只要变成了 【已作废】的状态。 那么协议单中的样本接收的状态自动变成废弃。 当协议单中的所有的样本接收选择了 废弃(或者拒收)。 那么协议单的状态 变成 已作废, 作废类型为“实验室废弃“ 。
cykj added ai-in-progress and removed ai-ready labels 2026-11-05 03:20:34 +00:00
cykj added ai-waiting-user and removed ai-in-progress labels 2026-11-05 03:24:52 +00:00
Author
Owner

修改端待确认(Agent)

工单诉求是市场协议作废 ↔ 质检样本接收废弃双向自动联动(细胞存储 + 科研捐赠)。只读定位结论:

  • 现状无双向联动,仅待接收列表过滤已作废协议
  • 必须改共享后端才能自动落库;仅改 Web/小程序前端无法保证两端一致
  • mobile-h5 无协议作废/样本接收业务页;小程序内市场协议实际在 mobile-oa-h5(WebView)
  • 本需求为状态联动,无新界面/弹窗,不另做 Figma 原型

推荐范围:backend + web-admin(后端联动后列表/详情自动反映;mobile-h5 预计无代码改动;若需补字典标签「实验室废弃」再动 mobile-oa-h5)

等待用户确认或按会话默认策略采用推荐后再实施。

## 修改端待确认(Agent) 工单诉求是市场协议作废 ↔ 质检样本接收废弃双向自动联动(细胞存储 + 科研捐赠)。只读定位结论: - 现状无双向联动,仅待接收列表过滤已作废协议 - **必须改共享后端**才能自动落库;仅改 Web/小程序前端无法保证两端一致 - `mobile-h5` 无协议作废/样本接收业务页;小程序内市场协议实际在 `mobile-oa-h5`(WebView) - 本需求为状态联动,无新界面/弹窗,不另做 Figma 原型 **推荐范围**:`backend` + `web-admin`(后端联动后列表/详情自动反映;`mobile-h5` 预计无代码改动;若需补字典标签「实验室废弃」再动 `mobile-oa-h5`) 等待用户确认或按会话默认策略采用推荐后再实施。
Author
Owner

范围确认(按默认策略超时采用推荐)

已确认修改范围:

  • backend(共享联动落库,必需)
  • web-admin(质检样本接收 / 市场协议作废入口验证)
  • mobile-h5:预计无代码改动(无对应业务页)
  • mobile-oa-h5:仅当需补「实验室废弃」展示标签时再改
  • 无新界面/弹窗,不做 Figma 原型

验收要点:

  1. 协议作废(细胞存储/科研捐赠)→ 协议下样本接收自动废弃(bj)
  2. 协议下全部样本接收均为废弃/拒收(bj)→ 协议自动已作废(yzf),作废类型「实验室废弃」
## 范围确认(按默认策略超时采用推荐) 已确认修改范围: - `backend`(共享联动落库,必需) - `web-admin`(质检样本接收 / 市场协议作废入口验证) - `mobile-h5`:预计无代码改动(无对应业务页) - `mobile-oa-h5`:仅当需补「实验室废弃」展示标签时再改 - 无新界面/弹窗,不做 Figma 原型 验收要点: 1. 协议作废(细胞存储/科研捐赠)→ 协议下样本接收自动废弃(bj) 2. 协议下全部样本接收均为废弃/拒收(bj)→ 协议自动已作废(yzf),作废类型「实验室废弃」
cykj added ai-in-progress and removed ai-waiting-user labels 2026-11-05 03:27:39 +00:00
cykj added ai-testing and removed ai-in-progress labels 2026-11-05 03:37:57 +00:00
cykj added ai-merging and removed ai-testing labels 2026-11-05 03:44:13 +00:00
Author
Owner

交付验收(Agent)

personal-dev:delivery:cykj/zkxw#31:1fb25f4fc28b3ec8eca79e1d19ae39e171e32128

验收条件对照

  1. 协议作废(细胞存储/科研捐赠)→ 协议下样本接收自动废弃(bj)— 已实现
  2. 协议下全部样本接收均为废弃 → 协议自动已作废,作废类型「实验室废弃」(sysfq) — 已实现

修改内容

  • 新增 backend/app/services/protocol_reception_discard_sync.py 双向联动
  • 挂钩 collection_protocol / research_donation / sample_reception
  • 字典种子 docs/sql/migrations/2026-11-05-void-type-lab-discard.sql(运行时也会 ensure)
  • Web 作废类型回退标签补充 sysfq

测试

  • pytest test_protocol_reception_discard_sync 5 passed
  • pytest test_protocol_status_transition_message passed
  • pnpm --dir web-admin build 通过
  • 未做真机联调(默认 Agent 单测+构建;服务未重启)

合并

  • PR: #40 (已合并)
  • 任务提交: e2e9059c170301575255f8906aab317c49843195
  • 集成分支 V2.0 合并提交: 1fb25f4fc28b3ec8eca79e1d19ae39e171e32128

遗留

  • 请在目标环境执行 SQL 种子(或依赖运行时 ensure)
  • 若本机/测试环境 backend 仍为旧进程,需你手动重启后联动才生效
## 交付验收(Agent) personal-dev:delivery:cykj/zkxw#31:1fb25f4fc28b3ec8eca79e1d19ae39e171e32128 ### 验收条件对照 1. 协议作废(细胞存储/科研捐赠)→ 协议下样本接收自动废弃(bj)— 已实现 2. 协议下全部样本接收均为废弃 → 协议自动已作废,作废类型「实验室废弃」(sysfq) — 已实现 ### 修改内容 - 新增 `backend/app/services/protocol_reception_discard_sync.py` 双向联动 - 挂钩 `collection_protocol` / `research_donation` / `sample_reception` - 字典种子 `docs/sql/migrations/2026-11-05-void-type-lab-discard.sql`(运行时也会 ensure) - Web 作废类型回退标签补充 sysfq ### 测试 - pytest `test_protocol_reception_discard_sync` 5 passed - pytest `test_protocol_status_transition_message` passed - `pnpm --dir web-admin build` 通过 - 未做真机联调(默认 Agent 单测+构建;服务未重启) ### 合并 - PR: https://gitea.aichengyan.com/cykj/zkxw/pulls/40 (已合并) - 任务提交: `e2e9059c170301575255f8906aab317c49843195` - 集成分支 V2.0 合并提交: `1fb25f4fc28b3ec8eca79e1d19ae39e171e32128` ### 遗留 - 请在目标环境执行 SQL 种子(或依赖运行时 ensure) - 若本机/测试环境 backend 仍为旧进程,需你手动重启后联动才生效
cykj closed this issue 2026-11-05 03:44:45 +00:00
cykj added ai-done and removed ai-merging labels 2026-11-05 03:45:00 +00:00
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: cykj/zkxw#31