From f861af3c67d1b0af6618808cdccdc5a395b48a93 Mon Sep 17 00:00:00 2001 From: liuyebo <1515783401@qq.com> Date: Mon, 24 Jun 2024 12:58:11 +0800 Subject: [PATCH] =?UTF-8?q?=E6=98=8E=E7=A1=AE=E9=99=90=E5=88=B6=E5=A5=BD?= =?UTF-8?q?=E5=90=84=E5=AD=97=E6=AE=B5=E9=95=BF=E5=BA=A6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- photo_review/photo_review.py | 10 +++++----- photo_review/util/data_util.py | 21 ++++++++++++++++----- 2 files changed, 21 insertions(+), 10 deletions(-) diff --git a/photo_review/photo_review.py b/photo_review/photo_review.py index a63a09a..6cb5ce2 100644 --- a/photo_review/photo_review.py +++ b/photo_review/photo_review.py @@ -27,8 +27,8 @@ from photo_review.entity.zx_ie_settlement import ZxIeSettlement from photo_review.entity.zx_ocr import ZxOcr from photo_review.entity.zx_phhd import ZxPhhd from photo_review.entity.zx_phrec import ZxPhrec -from photo_review.util.data_util import handle_date, handle_decimal, handle_department, handle_name, \ - handle_insurance_type, handle_original_data +from photo_review.util.data_util import handle_date, handle_decimal, parse_department, handle_name, \ + handle_insurance_type, handle_original_data, handle_hospital, handle_department from photo_review.util.util import get_default_datetime from ucloud import ucloud @@ -278,8 +278,8 @@ def photo_review(pk_phhd): discharge_record_ie_result = information_extraction(DISCHARGE_IE, discharge_record) discharge_data = { "pk_phhd": pk_phhd, - "hospital": get_best_value_in_keys(discharge_record_ie_result, HOSPITAL), - "department": get_best_value_in_keys(discharge_record_ie_result, DEPARTMENT), + "hospital": handle_hospital(get_best_value_in_keys(discharge_record_ie_result, HOSPITAL)), + "department": handle_department(get_best_value_in_keys(discharge_record_ie_result, DEPARTMENT)), "name": handle_name(get_best_value_in_keys(discharge_record_ie_result, PATIENT_NAME)), "admission_date_str": handle_original_data(get_best_value_in_keys(discharge_record_ie_result, ADMISSION_DATE)), "discharge_date_str": handle_original_data(get_best_value_in_keys(discharge_record_ie_result, DISCHARGE_DATE)), @@ -300,7 +300,7 @@ def photo_review(pk_phhd): if department_value: department_values = [] for dept in department_value: - department_values += handle_department(dept) + department_values += parse_department(dept) department_values = list(set(department_values)) if department_values: session = MysqlSession() diff --git a/photo_review/util/data_util.py b/photo_review/util/data_util.py index 3d581a0..b4ac2a8 100644 --- a/photo_review/util/data_util.py +++ b/photo_review/util/data_util.py @@ -62,21 +62,32 @@ def handle_date(string): return "" +def handle_hospital(string): + if not string: + return "" + return string[:255] + + def handle_department(string): + if not string: + return "" + return string[:255] + + +def parse_department(string): result = [] - max_length = 255 if not string: return result - result.append(string[:max_length]) + result.append(handle_department(string)) string_without_num = re.sub(r'\d|一|二|三|四|五|六|七|八|九|十', '', string) if string_without_num != string: - result.append(string_without_num[:max_length]) + result.append(handle_department(string_without_num)) string_without_brackets = re.sub(r'\([^()]*\)|\[[^\[\]]*\]|\{[^\{\}]*\}|([^()]*)', "", string_without_num) if string_without_brackets != string_without_num: - result.append(string_without_brackets[:max_length]) + result.append(handle_department(string_without_brackets)) pure_string = string_without_brackets.split("科")[0] + "科" if pure_string != string_without_brackets: - result.append(pure_string[:max_length]) + result.append(handle_department(pure_string)) return result