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

2 lines
7.3 KiB
JavaScript
Raw Normal View History

2026-06-09 17:00:23 +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,y,z as k,x as D,u as w,I as V,M as j}from"./index-CpNRQgjE.js";import{_ as x}from"./config-doctor.TgARj_nM.js";import{r as C}from"./cases.BlouN7SM.js";import{F as E,a as I,r as T,f as U}from"./session.Cc2HEzjU.js";import{c as F,a as O,b as $}from"./navigation.CsipbD6y.js";import{_ as A}from"./_plugin-vue_export-helper.BCo6x5W8.js";const N=A(e({__name:"diagnosis",props:{caseItem:{}},emits:["open-settings","open-profile","go-home"],setup(e,{emit:A}){const N=e,P=A,S=F(P),z=O(P),B=$(P),J=a({primaryDiagnosis:"",differentialDiagnosis:["",""],evidence:""}),K=l("王主任建议:请结合患者主诉和问诊信息,完成主要诊断、鉴别诊断和诊断依据。"),M=l(!1),q=l("idle"),G=l(""),H=l(!1),L=l(null);let Q=null;const R=s((()=>N.caseItem||L.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((()=>M.value?"提交中...":"submitted"===q.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(!M.value)if(J.primaryDiagnosis.trim())if(J.evidence.trim()){M.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),q.value="submitted",h({url:"/pages/treatment/treatment",fail(){q.value="idle",ie("进入治疗计划失败,请重试")}})}catch(e){ie(e instanceof Error?e.message:"诊断提交失败")}finally{M.value=!1}}else ie("请输入诊断依据");else ie("请输入主要诊断")}function ie(e){Q&&clearTimeout(Q),G.value=e,H.value=!0,Q=setTimeout((()=>{H.value=!1}),2200)}return i((()=>{L.value=C(),le()})),t((()=>{Q&&clearTimeout(Q)})),(e,a)=>{const l=y,s=k,i=D,t=w,b=V,h=j;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,null,{default:u((()=>[r("性别:"