|
@@ -100,7 +100,7 @@ async def get_disease_symptoms(
|
|
logger.error(f"获取疾病症状失败: {str(e)}")
|
|
logger.error(f"获取疾病症状失败: {str(e)}")
|
|
raise HTTPException(500, detail=StandardResponse.error(str(e)))
|
|
raise HTTPException(500, detail=StandardResponse.error(str(e)))
|
|
|
|
|
|
-@router.post("/disease_info", response_model=StandardResponse)
|
|
|
|
|
|
+@app.post("/disease_info", response_model=StandardResponse)
|
|
async def get_disease_info(
|
|
async def get_disease_info(
|
|
request: DiseaseInfoRequest,
|
|
request: DiseaseInfoRequest,
|
|
db: Session = Depends(get_db)
|
|
db: Session = Depends(get_db)
|
|
@@ -116,7 +116,7 @@ async def get_disease_info(
|
|
class DrugRequest(BaseModel):
|
|
class DrugRequest(BaseModel):
|
|
drug_id: str
|
|
drug_id: str
|
|
|
|
|
|
-@router.post("/drug_indications", response_model=StandardResponse)
|
|
|
|
|
|
+@app.post("/drug_indications", response_model=StandardResponse)
|
|
async def get_drug_indications(
|
|
async def get_drug_indications(
|
|
request: DrugRequest,
|
|
request: DrugRequest,
|
|
db: Session = Depends(get_db)
|
|
db: Session = Depends(get_db)
|
|
@@ -128,7 +128,7 @@ async def get_drug_indications(
|
|
logger.error(f"获取药物适应症失败: {str(e)}")
|
|
logger.error(f"获取药物适应症失败: {str(e)}")
|
|
raise HTTPException(500, detail=StandardResponse.error(str(e)))
|
|
raise HTTPException(500, detail=StandardResponse.error(str(e)))
|
|
|
|
|
|
-@router.post("/drug_contraindications", response_model=StandardResponse)
|
|
|
|
|
|
+@app.post("/drug_contraindications", response_model=StandardResponse)
|
|
async def get_drug_contraindications(
|
|
async def get_drug_contraindications(
|
|
request: DrugRequest,
|
|
request: DrugRequest,
|
|
db: Session = Depends(get_db)
|
|
db: Session = Depends(get_db)
|
|
@@ -140,7 +140,7 @@ async def get_drug_contraindications(
|
|
logger.error(f"获取药物禁忌症失败: {str(e)}")
|
|
logger.error(f"获取药物禁忌症失败: {str(e)}")
|
|
raise HTTPException(500, detail=StandardResponse.error(str(e)))
|
|
raise HTTPException(500, detail=StandardResponse.error(str(e)))
|
|
|
|
|
|
-@router.post("/drug_interactions", response_model=StandardResponse)
|
|
|
|
|
|
+@app.post("/drug_interactions", response_model=StandardResponse)
|
|
async def get_drug_interactions(
|
|
async def get_drug_interactions(
|
|
request: DrugRequest,
|
|
request: DrugRequest,
|
|
db: Session = Depends(get_db)
|
|
db: Session = Depends(get_db)
|
|
@@ -164,7 +164,7 @@ class SimilarConceptsRequest(BaseModel):
|
|
concept_id: str
|
|
concept_id: str
|
|
top_k: int = 5
|
|
top_k: int = 5
|
|
|
|
|
|
-@router.post("/search_concept",
|
|
|
|
|
|
+@app.post("/search_concept",
|
|
operation_id="医学概念搜索",
|
|
operation_id="医学概念搜索",
|
|
summary="根据名称和类型搜索医学概念",
|
|
summary="根据名称和类型搜索医学概念",
|
|
description="""根据概念名称和类型搜索医学概念节点。
|
|
description="""根据概念名称和类型搜索医学概念节点。
|
|
@@ -295,7 +295,7 @@ class DepartmentRequest(BaseModel):
|
|
diagnosis: str
|
|
diagnosis: str
|
|
symptoms: Optional[List[str]] = None
|
|
symptoms: Optional[List[str]] = None
|
|
|
|
|
|
-@router.post("/medical/check_diagnosis", response_model=StandardResponse)
|
|
|
|
|
|
+@app.post("/medical/check_diagnosis", response_model=StandardResponse)
|
|
async def check_diagnosis_consistency(
|
|
async def check_diagnosis_consistency(
|
|
request: DiagnosisCheckRequest,
|
|
request: DiagnosisCheckRequest,
|
|
db: Session = Depends(get_db)
|
|
db: Session = Depends(get_db)
|
|
@@ -307,7 +307,7 @@ async def check_diagnosis_consistency(
|
|
logger.error(f"诊断一致性检查失败: {str(e)}")
|
|
logger.error(f"诊断一致性检查失败: {str(e)}")
|
|
raise HTTPException(500, detail=StandardResponse.error(str(e)))
|
|
raise HTTPException(500, detail=StandardResponse.error(str(e)))
|
|
|
|
|
|
-@router.post("/medical/suggest_questions", response_model=StandardResponse)
|
|
|
|
|
|
+@app.post("/medical/suggest_questions", response_model=StandardResponse)
|
|
async def suggest_next_questions(
|
|
async def suggest_next_questions(
|
|
request: NextQuestionsRequest,
|
|
request: NextQuestionsRequest,
|
|
db: Session = Depends(get_db)
|
|
db: Session = Depends(get_db)
|
|
@@ -319,7 +319,7 @@ async def suggest_next_questions(
|
|
logger.error(f"建议下一步问题失败: {str(e)}")
|
|
logger.error(f"建议下一步问题失败: {str(e)}")
|
|
raise HTTPException(500, detail=StandardResponse.error(str(e)))
|
|
raise HTTPException(500, detail=StandardResponse.error(str(e)))
|
|
|
|
|
|
-@router.post("/medical/triage_guidance", response_model=StandardResponse)
|
|
|
|
|
|
+@app.post("/medical/triage_guidance", response_model=StandardResponse)
|
|
async def get_triage_guidance(
|
|
async def get_triage_guidance(
|
|
request: TriageRequest,
|
|
request: TriageRequest,
|
|
db: Session = Depends(get_db)
|
|
db: Session = Depends(get_db)
|
|
@@ -331,7 +331,7 @@ async def get_triage_guidance(
|
|
logger.error(f"获取分诊建议失败: {str(e)}")
|
|
logger.error(f"获取分诊建议失败: {str(e)}")
|
|
raise HTTPException(500, detail=StandardResponse.error(str(e)))
|
|
raise HTTPException(500, detail=StandardResponse.error(str(e)))
|
|
|
|
|
|
-@router.post("/medical/coding_recommendation", response_model=StandardResponse)
|
|
|
|
|
|
+@app.post("/medical/coding_recommendation", response_model=StandardResponse)
|
|
async def get_coding_recommendation(
|
|
async def get_coding_recommendation(
|
|
request: CodingRequest,
|
|
request: CodingRequest,
|
|
db: Session = Depends(get_db)
|
|
db: Session = Depends(get_db)
|
|
@@ -343,7 +343,7 @@ async def get_coding_recommendation(
|
|
logger.error(f"获取编码推荐失败: {str(e)}")
|
|
logger.error(f"获取编码推荐失败: {str(e)}")
|
|
raise HTTPException(500, detail=StandardResponse.error(str(e)))
|
|
raise HTTPException(500, detail=StandardResponse.error(str(e)))
|
|
|
|
|
|
-@router.post("/medical/suggest_department", response_model=StandardResponse)
|
|
|
|
|
|
+@app.post("/medical/suggest_department", response_model=StandardResponse)
|
|
async def suggest_appropriate_department(
|
|
async def suggest_appropriate_department(
|
|
request: DepartmentRequest,
|
|
request: DepartmentRequest,
|
|
db: Session = Depends(get_db)
|
|
db: Session = Depends(get_db)
|
|
@@ -360,7 +360,7 @@ class MedicalRecordRequest(BaseModel):
|
|
medical_record: Dict[str, Any]
|
|
medical_record: Dict[str, Any]
|
|
validate_type: str
|
|
validate_type: str
|
|
|
|
|
|
-@router.post("/medical/validate_record", response_model=StandardResponse)
|
|
|
|
|
|
+@app.post("/medical/validate_record", response_model=StandardResponse)
|
|
async def validate_medical_record(
|
|
async def validate_medical_record(
|
|
request: MedicalRecordRequest,
|
|
request: MedicalRecordRequest,
|
|
db: Session = Depends(get_db)
|
|
db: Session = Depends(get_db)
|