提交
This commit is contained in:
1 parent
7e9155fef1
commit
2fd826dbe1
80 files changed
+32546
-36145
No files matched your search
@@ -0,0 +1,22 @@
|
||||
"""按实验室入库编码前缀匹配内置生产任务组合模版。"""
|
||||
|
||||
from typing import List, Optional, Tuple
|
||||
|
||||
# 最长前缀优先:BC 必须在 B 之前,避免 BC… 误匹配造血干
|
||||
_LAB_CODE_BUILTIN_SET_RULES: List[Tuple[str, str]] = [
|
||||
("UBMC", "UBMC冻存(内置模版)"),
|
||||
("PBMC", "PBMC冻存(内置模版)"),
|
||||
("BC", "干细胞培养(内置模版)"),
|
||||
("B", "造血干样本处理(内置模版)"),
|
||||
]
|
||||
|
||||
|
||||
def match_builtin_task_set_name_by_lab_storage_code(lab_storage_code: str) -> Optional[str]:
|
||||
"""返回应使用的内置模版集合名称;无匹配返回 None。大小写不敏感。"""
|
||||
text = (lab_storage_code or "").strip().upper()
|
||||
if not text:
|
||||
return None
|
||||
for prefix, set_name in _LAB_CODE_BUILTIN_SET_RULES:
|
||||
if text.startswith(prefix.upper()):
|
||||
return set_name
|
||||
return None
|
||||
Reference in new issue
Block a user