def add_side_effect(pid, treNum): data = request.get_json() for _data in data['data']: _data['pid'] = pid _data['treNum'] = treNum json2db(_data, SideEffect) return Success()
def add_image_exam(pid, treNum): data = request.get_json() for _data in data['data']: _data['pid'] = pid _data['treNum'] = treNum json2db(_data, ImageExams) return Success()
def add_signs(pid, treNum): data = request.get_json() print(data) for _data in data['data']: _data['pid'] = pid _data['treNum'] = treNum json2db(_data, Signs) return Success()
def add_treatment_evaluation(pid, treNum, trement): data = request.get_json() data['pid'] = pid data['treNum'] = treNum data['trement'] = trement json2db(data, TreRec) """ 每一次治疗信息中,疗效评估页面,增加一个字段"PFS/DFS",该字段可以手动录入,也可以系统自动计算填写,自动计算优先于手动填写。 填写了进展时间之后,系统需要自动计算PFS/DFS,并填写,计算逻辑为:用药开始时间到进展时间之间的时间间隔。如果不自动计算,则可以手动填写 """ if 'proDate' in data and 'PFS_DFS' not in data: treRec = TreRec.query.filter_by(pid=pid, treNum=treNum).first() treRec.compute_FPS_DFS() return Success()
def add_patient(pid): data = request.get_json() patient = Patient.query.get_or_404(pid) if 'idNumber' in data: item = Patient.query.filter(Patient.is_delete == 0, Patient.idNumber == data['idNumber'], Patient.id != pid, Patient.researchCenter == patient.researchCenter).first() if item: raise ParameterException(msg='已经存在相同身份证号码。') if 'hospitalNumber' in data and patient.hospitalNumber is not None: item = Patient.query.filter(Patient.is_delete == 0, Patient.hospitalNumber == data['hospitalNumber'], Patient.id != pid, Patient.researchCenter == patient.researchCenter).first() if item: raise ParameterException(msg='已经存在相同住院号。') json2db(data, Patient) return Success()
def migrate_hormone_drug(): hormone_items = PastHis.query.filter(PastHis.is_delete == 0, PastHis.hormone == 1).all() drug_items = PastHis.query.filter(PastHis.is_delete == 0, PastHis.drug == 1).all() with db.auto_commit(): for item in hormone_items: hormones = item.hormoneUseHis for hormone in hormones: json2db( { 'pid': item.pid, 'type': 1, 'drug_name': hormone.get('drugName'), 'drug_dose': hormone.get('drugDose'), 'use_time': hormone.get('duration') if hormone.get('duration') != '/' else None }, DrugHistory) for item in drug_items: drugs = item.drugUseHis for drug in drugs: json2db( { 'pid': item.pid, 'type': 0, 'drug_name': drug.get('drugName'), 'drug_dose': drug.get('drugDose'), 'use_time': drug.get('duration') if drug.get('duration') != '/' else None }, DrugHistory) return 'ok'
def add_therapy_record(pid, treNum): data = request.get_json() if 'parent' in data: data['parent']['pid'] = pid data['parent']['treNum'] = treNum json2db(data['parent'], TreRec) if 'child' in data: tre_rec = TreRec.query.filter_by(pid=pid, treNum=treNum).first_or_404() trement = tre_rec.trement data['child']['pid'] = pid data['child']['treNum'] = treNum if trement in ['one', 'two', 'three', 'four', 'five', 'other']: json2db(data['child'], OneToFive) elif trement == 'surgery': json2db(data['child'], Surgery) elif trement == 'radiotherapy': json2db(data['child'], Radiotherapy) return Success()
def add_tumor_marker(pid, treNum): data = request.get_json() data['pid'] = pid data['treNum'] = treNum json2db(data, TumorMarker) return Success()
def add_blood_routine(pid, treNum): data = request.get_json() data['pid'] = pid data['treNum'] = treNum json2db(data, BloodRoutine) return Success()
def add_patient_follInfo(pid): data = request.get_json() data['id'] = pid data['finishFollowup'] = 0 json2db(data, Patient) return Success()
def add_follInfo(pid): data = request.get_json() for _data in data['data']: _data['pid'] = pid json2db(_data, FollInfo) return Success()
def add_therapy_plan(pid, treNum): data = request.get_json() data['pid'] = pid data['treNum'] = treNum json2db(data, DetailTrePlan) return Success()
def add_coagulation(pid, treNum): data = request.get_json() data['pid'] = pid data['treNum'] = treNum json2db(data, Coagulation) return Success()
def add_cytokines(pid, treNum): data = request.get_json() data['pid'] = pid data['treNum'] = treNum json2db(data, Cytokines) return Success()
def add_mole_detec(pid, treNum): data = request.get_json() data['pid'] = pid data['treNum'] = treNum json2db(data, MoleDetec) return Success()
def add_blood_bio(pid, treNum): data = request.get_json() data['pid'] = pid data['treNum'] = treNum json2db(data, BloodBio) return Success()
def add_other_exam(pid, treNum): data = request.get_json() data['pid'] = pid data['treNum'] = treNum json2db(data, OtherExams) return Success()
def add_drug_history(pid): data = request.get_json() patient = Patient.query.get_or_404(pid) data["pid"] = patient.id json2db(data, DrugHistory) return Success()
def add_past_history(pid): data = request.get_json() patient = Patient.query.get_or_404(pid) data["pid"] = patient.id json2db(data, PastHis) return Success()
def add_immunohis(pid, treNum): data = request.get_json() data['pid'] = pid data['treNum'] = treNum json2db(data, Immunohis) return Success()
def add_lymSubsets(pid, treNum): data = request.get_json() data['pid'] = pid data['treNum'] = treNum json2db(data, LymSubsets) return Success()
def add_record_info(pid): tre_recs = TreRec.query.filter_by(pid=pid).all() json2db({'pid': pid, 'treNum': len(tre_recs) + 1}, TreRec) return Success()
def add_lung_function(pid, treNum): data = request.get_json() data['pid'] = pid data['treNum'] = treNum json2db(data, Lung) return Success()
def add_thyroid(pid, treNum): data = request.get_json() data['pid'] = pid data['treNum'] = treNum json2db(data, Thyroid) return Success()
def add_first_diagnose(pid): data = request.get_json() patient = Patient.query.get_or_404(pid) data["pid"] = patient.id json2db(data, IniDiaPro) return Success()
def add_myocardialEnzyme(pid, treNum): data = request.get_json() data['pid'] = pid data['treNum'] = treNum json2db(data, MyocardialEnzyme) return Success()