添加结果文件输出

This commit is contained in:
2024-06-25 16:59:34 +08:00
parent 834f6fa482
commit 81c4c5694c

View File

@@ -1,12 +1,18 @@
import json
import os
import sys
from decimal import Decimal
from io import BytesIO
from itertools import groupby
import requests
from PIL import ImageDraw, Image, ImageFont
from photo_review.entity.zx_ie_cost import ZxIeCost
from photo_review.entity.zx_ie_discharge import ZxIeDischarge
from photo_review.entity.zx_ie_settlement import ZxIeSettlement
from photo_review.entity.zx_phhd import ZxPhhd
sys.path.append(os.path.dirname(os.path.dirname(os.path.abspath(__file__))))
from config.mysql import MysqlSession
from photo_review.entity.zx_ocr import ZxOcr
@@ -15,7 +21,51 @@ from ucloud import ucloud
def check_ie_result(pk_phhd):
json_result = {"pk_phhd": pk_phhd}
session = MysqlSession()
phhd = session.query(ZxPhhd.cXm).filter(ZxPhhd.pk_phhd == pk_phhd).one()
json_result["cXm"] = phhd.cXm
settlement = session.query(ZxIeSettlement.pk_ie_settlement, ZxIeSettlement.name, ZxIeSettlement.admission_date, ZxIeSettlement.discharge_date,
ZxIeSettlement.medical_expenses, ZxIeSettlement.personal_cash_payment, ZxIeSettlement.personal_account_payment,
ZxIeSettlement.personal_funded_amount, ZxIeSettlement.medical_insurance_type).filter(ZxIeSettlement.pk_phhd == pk_phhd).one()
settlement_result = {
"pk_ie_settlement": settlement.pk_ie_settlement,
"name": settlement.name,
"admission_date": settlement.admission_date,
"discharge_date": settlement.discharge_date,
"medical_expenses": settlement.medical_expenses,
"personal_cash_payment": settlement.personal_cash_payment,
"personal_account_payment": settlement.personal_account_payment,
"personal_funded_amount": settlement.personal_funded_amount,
"medical_insurance_type": settlement.medical_insurance_type,
}
json_result["settlement"] = settlement_result
discharge = session.query(ZxIeDischarge.pk_ie_discharge, ZxIeDischarge.hospital, ZxIeDischarge.pk_yljg, ZxIeDischarge.department, ZxIeDischarge.pk_ylks,
ZxIeDischarge.name, ZxIeDischarge.admission_date, ZxIeDischarge.discharge_date, ZxIeDischarge.doctor).filter(ZxIeDischarge.pk_phhd == pk_phhd).one()
discharge_result = {
"pk_ie_discharge": discharge.pk_ie_discharge,
"hospital": discharge.hospital,
"pk_yljg": discharge.pk_yljg,
"department": discharge.department,
"pk_ylks": discharge.pk_ylks,
"name": discharge.name,
"admission_date": discharge.admission_date,
"discharge_date": discharge.discharge_date,
"doctor": discharge.doctor,
}
json_result["discharge"] = discharge_result
cost = session.query(ZxIeCost.pk_ie_cost, ZxIeCost.name, ZxIeCost.admission_date, ZxIeCost.discharge_date, ZxIeCost.medical_expenses).filter(ZxIeCost.pk_phhd == pk_phhd).one()
cost_result = {
"pk_ie_cost": cost.pk_ie_cost,
"name": cost.name,
"admission_date": cost.admission_date,
"discharge_date": cost.discharge_date,
"medical_expenses": cost.medical_expenses,
}
json_result["cost"] = cost_result
phrecs = session.query(ZxPhrec.pk_phrec, ZxPhrec.pk_phhd, ZxPhrec.cRectype, ZxPhrec.cfjaddress).filter(ZxPhrec.pk_phhd == pk_phhd).all()
for phrec in phrecs:
img_name = phrec.cfjaddress
@@ -50,6 +100,14 @@ def check_ie_result(pk_phhd):
image.save(f"./check_result/{pk_phhd}/{ocr_item.id}/{img_name}")
session.close()
# 自定义JSON处理器来处理Decimal类型
def decimal_default(obj):
if isinstance(obj, Decimal):
return float(obj)
with open(f"./check_result/{pk_phhd}/result.json", "w", encoding="utf-8") as json_file:
json.dump(json_result, json_file, indent=4, ensure_ascii=False, default=decimal_default)
if __name__ == '__main__':
check_ie_result(3866770)