根因:SQL的computed_status使用EXISTS判断(status_enum=2即显示已签发), 但后端hasCollectedSpecimen检查该处方下所有ServiceRequest的标本状态, 包括非ACTIVE状态的。当处方下存在混合状态的ServiceRequest时 (如一个ACTIVE+一个COMPLETED且有已采标本),前端显示"已签发" (因为EXISTS status_enum=2为true),但后端因COMPLETED请求的标本 已采集而拒绝撤回,导致报错。 修复:先筛选出ACTIVE状态的ServiceRequest ID列表,再用该列表 校验标本采集状态和执行状态更新,与SQL的EXISTS逻辑完全一致。 Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>