Files
vueapp/dist/assets/pages-diagnosis-diagnosis.mdc2Xy6B.js
T

2 lines
7.3 KiB
JavaScript
Raw Normal View History

2026-06-15 18:04:01 +08:00
import{d as e,a,r as l,c as s,o as i,b as t,e as n,f as o,w as u,i as c,E as d,j as r,t as f,l as p,m,F as v,n as _,g,s as b,p as h,z as y,A as k,y as D,x as w,I as j,N as V}from"./index-DGiVEDOl.js";import{_ as x}from"./config-doctor.TgARj_nM.js";import{r as C}from"./cases.i-QLayjn.js";import{F as E,a as I,r as T,f as U}from"./session.AIvyRM0e.js";import{c as A,a as F,b as N}from"./navigation.CRkd1wPM.js";import{_ as O}from"./_plugin-vue_export-helper.BCo6x5W8.js";import"./auth.vuBox8Gk.js";const $=O(e({__name:"diagnosis",props:{caseItem:{}},emits:["open-settings","open-profile","go-home"],setup(e,{emit:O}){const $=e,P=O,S=A(P),z=F(P),B=N(P),J=a({primaryDiagnosis:"",differentialDiagnosis:["",""],evidence:""}),K=l("王主任建议:请结合患者主诉和问诊信息,完成主要诊断、鉴别诊断和诊断依据。"),q=l(!1),G=l("idle"),H=l(""),L=l(!1),M=l(null);let Q=null;const R=s((()=>$.caseItem||M.value)),W=s((()=>{var e;return(null==(e=R.value)?void 0:e.patientName)||"陈先生"})),X=s((()=>{var e;return(null==(e=R.value)?void 0:e.gender)||"男"})),Y=s((()=>{var e;return(null==(e=R.value)?void 0:e.age)||60})),Z=s((()=>{var e;return(null==(e=R.value)?void 0:e.department)||"心血管内科"})),ee=s((()=>{var e;const a=(null==(e=R.value)?void 0:e.title)||"持续胸痛3小时";return a.includes("胸痛")?"胸痛":a.slice(0,6)})),ae=s((()=>q.value?"提交中...":"submitted"===G.value?"已提交":"下一步"));function le(){(function(e){const a=(null==e?void 0:e.title.includes("胸痛"))||"心血管内科"===(null==e?void 0:e.department);return Promise.resolve({mentorAdvice:a?"王主任建议:请结合患者既往高血压史及突发性胸痛的性质,进行准确诊断。注意鉴别心梗与主动脉夹层。":"王主任建议:请基于主诉、阳性症状和危险信号提出主要诊断,并列出需要排除的鉴别诊断。",defaultDraft:{primaryDiagnosis:"",differentialDiagnosis:["",""],evidence:""}})})(R.value).then((e=>{K.value=e.mentorAdvice,J.primaryDiagnosis="",J.differentialDiagnosis=["",""],J.evidence=""}))}async function se(){if(!q.value)if(J.primaryDiagnosis.trim())if(J.evidence.trim()){q.value=!0;try{const e=U(),a=await async function(e,a){const l={primary_diagnosis:a.primaryDiagnosis.trim(),differential_diagnoses:a.differentialDiagnosis.map((e=>e.trim())).filter(Boolean),diagnosis_basis:a.evidence.trim()},s=await fetch(`${E}/sessions/${e}/diagnosis`,{method:"POST",headers:I(),body:JSON.stringify(l)});if(!s.ok)throw new Error(await T(s));const i=await s.json();if("OK"!==i.code)throw new Error(i.message||"诊断提交失败");return i.data||l}(e,{primaryDiagnosis:J.primaryDiagnosis,differentialDiagnosis:J.differentialDiagnosis.filter((e=>e.trim())),evidence:J.evidence});b("clinical-thinking-diagnosis",a),G.value="submitted",h({url:"/pages/treatment/treatment",fail(){G.value="idle",ie("进入治疗计划失败,请重试")}})}catch(e){ie(e instanceof Error?e.message:"诊断提交失败")}finally{q.value=!1}}else ie("请输入诊断依据");else ie("请输入主要诊断")}function ie(e){Q&&clearTimeout(Q),H.value=e,L.value=!0,Q=setTimeout((()=>{L.value=!1}),2200)}return i((()=>{M.value=C(),le()})),t((()=>{Q&&clearTimeout(Q)})),(e,a)=>{const l=y,s=k,i=D,t=w,b=j,h=V;return n(),o(l,{class:"diagnosis-page"},{default:u((()=>[c(l,{class:"diagnosis-shell"},{default:u((()=>[c(l,{class:"top-nav"},{default:u((()=>[c(s,{class:"icon-button","aria-label":"设置",onClick:d(z)},{default:u((()=>[c(l,{class:"settings-icon"})])),_:1},8,["onClick"]),c(s,{class:"icon-button home-button","aria-label":"首页",onClick:d(B)},{default:u((()=>[c(l,{class:"home-icon"})])),_:1},8,["onClick"]),c(l,{class:"nav-spacer"}),c(s,{class:"icon-button","aria-label":"个人中心",onClick:d(S)},{default:u((()=>[c(l,{class:"account-icon"})])),_:1},8,["onClick"])])),_:1}),c(l,{class:"case-header"},{default:u((()=>[c(i,{class:"case-heading"},{default:u((()=>[r("患者:"+f(W.value)+" ("+f(ee.value)+")",1)])),_:1}),c(l,{class:"patient-meta"},{default:u((()=>[c(i,null,{default:u((()=>[r("姓名:"+f(W.value),1)])),_:1}),c(i,nul