From 1f652d0a7496e9743b5d231830a37c7e13c93948 Mon Sep 17 00:00:00 2001 From: liuyebo <1515783401@qq.com> Date: Thu, 15 Aug 2024 09:15:08 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BC=98=E5=8C=96=E5=88=AB=E5=90=8D=E7=9A=84?= =?UTF-8?q?=E5=8C=B9=E9=85=8D=E6=9B=BF=E6=8D=A2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- docker-compose.yml | 2 +- photo_review/__init__.py | 8 ++++---- photo_review/photo_review.py | 12 +++++++----- 3 files changed, 12 insertions(+), 10 deletions(-) diff --git a/docker-compose.yml b/docker-compose.yml index 1faaab0..85dc1c0 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -1,6 +1,6 @@ x-env: &template - image: fcb_photo_review:1.12.4 + image: fcb_photo_review:1.12.5 restart: always services: diff --git a/photo_review/__init__.py b/photo_review/__init__.py index f5aaa0b..3e50121 100644 --- a/photo_review/__init__.py +++ b/photo_review/__init__.py @@ -65,11 +65,11 @@ COST_LIST_SCHEMA = PATIENT_NAME + ADMISSION_DATE + DISCHARGE_DATE + MEDICAL_EXPE """ 别名配置 """ +# 使用别名中的value替换key。考虑到效率问题,只会替换第一个匹配到的key。 HOSPITAL_ALIAS = { - "江阴徐霞客医院": ["江阴市徐霞客医院"], - "江阴北国医院": ["江阴市北国医院"], - "溧阳茶亭医院": ["溧阳市茶亭医院"], - "南京市六合中医院": ["南京市六合区中医院"] + "江阴": ["江阴市"], + "溧阳": ["溧阳市"], + "六合": ["六合区"], } """ diff --git a/photo_review/photo_review.py b/photo_review/photo_review.py index eb28f70..8211294 100644 --- a/photo_review/photo_review.py +++ b/photo_review/photo_review.py @@ -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()