优化别名的匹配替换

This commit is contained in:
2024-08-15 09:15:08 +08:00
parent 326a4d14ba
commit 1f652d0a74
3 changed files with 12 additions and 10 deletions

View File

@@ -245,11 +245,13 @@ def discharge_task(pk_phhd, discharge_record, identity):
for hospital in hospitals:
parsed_hospitals = parse_hospital(hospital)
for parsed_hospital in parsed_hospitals:
if parsed_hospital in HOSPITAL_ALIAS:
for hospital_alias in HOSPITAL_ALIAS[parsed_hospital]:
hospital_like_conditions.append(BdYljg.name.like(f'%{hospital_alias}%'))
else:
hospital_like_conditions.append(BdYljg.name.like(f'%{parsed_hospital}%'))
hospital_like_conditions.append(BdYljg.name.like(f'%{parsed_hospital}%'))
for hospital_alias_key in HOSPITAL_ALIAS.keys():
if hospital_alias_key in parsed_hospital:
for hospital_alias in HOSPITAL_ALIAS[hospital_alias_key]:
new_hospital = parsed_hospital.replace(hospital_alias_key, hospital_alias)
hospital_like_conditions.append(BdYljg.name.like(f'%{new_hospital}%'))
break
session = MysqlSession()
yljg = session.query(BdYljg.pk_yljg, BdYljg.name).filter(or_(*hospital_like_conditions)).limit(1).one_or_none()
session.close()