123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233 |
- import json
- class JsonToText:
- def convert(self, json_data):
- output = []
- output.append(f"年龄:{json_data['age']}岁")
- output.append(f"性别:{'女' if json_data['sex'] == 2 else '男'}")
- output.append(f"职业:{json_data['doctor']['professionalTitle']}")
- output.append(f"科室:{json_data['dept'][0]['name']}")
- output.append("\n详细信息")
- output.append(f"主诉:{json_data['chief']}")
- output.append(f"现病史:{json_data['symptom']}")
- output.append(f"查体:{json_data['vital']}")
- output.append(f"既往史:{json_data['pasts']}")
- output.append(f"婚姻状况:{json_data['marital']}")
- output.append(f"个人史:{json_data['personal']}")
- output.append(f"家族史:{json_data['family']}")
- output.append(f"月经史:{json_data['menstrual']}")
- output.append(f"疾病名称:{json_data['diseaseName']['name']}")
- output.append("其他指数:无")
- output.append(f"手术名称:{json_data['operationName']['name']}")
- output.append("传染性:无")
- output.append("手术记录:无")
- output.append(f"过敏史:{json_data['allergy'] or '无'}")
- output.append("疫苗接种:无")
- output.append("其他:无")
- output.append("检验申请单:无")
- output.append("影像申请单:无")
- output.append("诊断申请单:无")
- output.append("用药申请单:无")
- output.append("检验结果:无")
- output.append("影像结果:无")
- output.append("诊断结果:无")
- output.append("用药记录:无")
- output.append("输血记录:无")
- output.append("\n科室信息")
- output.append(f"科室名称:{json_data['dept'][0]['name']}")
- output.append(f"唯一名称:{json_data['dept'][0]['uniqueName']}")
- return '\n'.join(output)
- class JsonToTextConverter:
- @staticmethod
- def convert(json_str):
- json_data = json.loads(json_str)
- return JsonToText().convert(json_data)
- def convert(self, json_str):
- json_data = json.loads(json_str)
- return JsonToText().convert(json_data)
- output.append(f"年龄:{json_data['age']}岁")
- output.append(f"性别:{'女' if json_data['sex'] == 2 else '男'}")
- output.append(f"职业:{json_data['doctor']['professionalTitle']}")
- output.append(f"科室:{json_data['dept'][0]['name']}")
- output.append("\n详细信息")
- output.append(f"主诉:{json_data['chief']}")
- output.append(f"现病史:{json_data['symptom']}")
- output.append(f"查体:{json_data['vital']}")
- output.append(f"既往史:{json_data['pasts']}")
- output.append(f"婚姻状况:{json_data['marital']}")
- output.append(f"个人史:{json_data['personal']}")
- output.append(f"家族史:{json_data['family']}")
- output.append(f"月经史:{json_data['menstrual']}")
- output.append(f"疾病名称:{json_data['diseaseName']['name']}")
- output.append("其他指数:无")
- output.append(f"手术名称:{json_data['operationName']['name']}")
- output.append("传染性:无")
- output.append("手术记录:无")
- output.append(f"过敏史:{json_data['allergy'] or '无'}")
- output.append("疫苗接种:无")
- output.append("其他:无")
- output.append("检验申请单:无")
- output.append("影像申请单:无")
- output.append("诊断申请单:无")
- output.append("用药申请单:无")
- output.append("检验结果:无")
- output.append("影像结果:无")
- output.append("诊断结果:无")
- output.append("用药记录:无")
- output.append("输血记录:无")
- output.append("\n科室信息")
- output.append(f"科室名称:{json_data['dept'][0]['name']}")
- output.append(f"唯一名称:{json_data['dept'][0]['uniqueName']}")
- return '\n'.join(output)
- def convert(self, json_str):
- json_data = json.loads(json_str)
- return JsonToText().convert(json_data)
- output.append(f"年龄:{json_data['age']}岁")
- output.append(f"性别:{'女' if json_data['sex'] == 2 else '男'}")
- output.append(f"职业:{json_data['doctor']['professionalTitle']}")
- output.append(f"科室:{json_data['dept'][0]['name']}")
- output.append("\n详细信息")
- output.append(f"主诉:{json_data['chief']}")
- output.append(f"现病史:{json_data['symptom']}")
- output.append(f"查体:{json_data['vital']}")
- output.append(f"既往史:{json_data['pasts']}")
- output.append(f"婚姻状况:{json_data['marital']}")
- output.append(f"个人史:{json_data['personal']}")
- output.append(f"家族史:{json_data['family']}")
- output.append(f"月经史:{json_data['menstrual']}")
- output.append(f"疾病名称:{json_data['diseaseName']['name']}")
- output.append("其他指数:无")
- output.append(f"手术名称:{json_data['operationName']['name']}")
- output.append("传染性:无")
- output.append("手术记录:无")
- output.append(f"过敏史:{json_data['allergy'] or '无'}")
- output.append("疫苗接种:无")
- output.append("其他:无")
- output.append("检验申请单:无")
- output.append("影像申请单:无")
- output.append("诊断申请单:无")
- output.append("用药申请单:无")
- output.append("检验结果:无")
- output.append("影像结果:无")
- output.append("诊断结果:无")
- output.append("用药记录:无")
- output.append("输血记录:无")
- output.append("\n科室信息")
- output.append(f"科室名称:{json_data['dept'][0]['name']}")
- output.append(f"唯一名称:{json_data['dept'][0]['uniqueName']}")
- return '\n'.join(output)
- if __name__ == '__main__':
- json_data = {
- "hospitalId": -1,
- "age": "28",
- "sex": 2,
- "doctor": {
- "professionalTitle": "付医生"
- },
- "chief": "反复咳嗽、咳痰伴低热2月余,加重伴夜间盗汗1周。",
- "symptom": "2小时前无诱因下出现持续性上腹部绞痛,剧痛难忍,伴恶心慢性,无呕吐,无大小便异常,曾至当地卫生院就诊,查血常规提示:血小板计数5*10^9/L",
- "vital": "神清,急性病容,皮肤巩膜黄软,心肺无殊,腹平软,上腹部压痛明显,无反跳痛",
- "pasts": "既往有胆总管结石,既往青霉素过敏",
- "marriage": "",
- "personal": "不饮酒,不抽烟",
- "family": "不详",
- "marital": "未婚未育",
- "menstrual": "末次月经2020-12-23,月经期第二天",
- "diseaseName": {
- "dateValue": "",
- "name": "胆囊结石伴有急性胆囊炎",
- "uniqueName": ""
- },
- "otherIndex": {},
- "operationName": {
- "dateValue": "2020-12-24 17:39:20",
- "name": "经皮肝穿刺引流术",
- "uniqueName": "经皮肝穿刺引流术"
- },
- "infectious": "",
- "operation": [],
- "allergy": "",
- "vaccination": "",
- "other": "",
- "lisString": "",
- "pacsString": "",
- "diagString": "",
- "drugString": "",
- "lis": [],
- "pacs": [],
- "diag": [
- {
- "dateValue": "",
- "name": "胆囊结石伴有急性胆囊炎",
- "uniqueName": ""
- }
- ],
- "lisOrder": [],
- "pacsOrder": [
- {
- "uniqueName": "经皮肝穿刺胆管造影",
- "detailName": "经皮肝穿刺胆管造影",
- "name": "经皮肝穿刺胆管造影",
- "dateValue": "2020-12-24 17:33:52",
- "time": "2020-12-24 17:33:52",
- "check": True
- }
- ],
- "diagOrder": [],
- "drugOrder": [
- {
- "uniqueName": "利多卡因",
- "detailName": "利多卡因",
- "name": "利多卡因注射剂",
- "flg": 5,
- "time": "2020-12-24 17:37:27",
- "dateValue": "2020-12-24 17:37:27",
- "selectShow": False,
- "check": True,
- "form": "注射剂",
- "selectVal": "1"
- },
- {
- "uniqueName": "青霉素",
- "detailName": "青霉素",
- "name": "青霉素注射剂",
- "flg": 5,
- "time": "2020-12-24 17:40:08",
- "dateValue": "2020-12-24 17:40:08",
- "selectShow": False,
- "check": True,
- "form": "注射剂",
- "selectVal": "1"
- }
- ],
- "operationOrder": [
- {
- "uniqueName": "经皮肝穿刺引流术",
- "detailName": "经皮肝穿刺引流术",
- "name": "经皮肝穿刺引流术",
- "flg": 6,
- "time": "2020-12-24 17:39:20",
- "dateValue": "2020-12-24 17:39:20",
- "hasTreat": 1,
- "check": True
- }
- ],
- "otherOrder": [],
- "drug": [],
- "transfusion": [],
- "transfusionOrder": [],
- "dept": [
- {
- "name": "全科",
- "uniqueName": "全科"
- }
- ]
- }
- print(JsonToText().convert(json_data))
|