Files
vueapp/dist/assets/pages-diagnosis-diagnosis.B6vW77us.js
T
2026-06-08 16:39:10 +08:00

2 lines
6.4 KiB
JavaScript

import{d as e,b as a,a as l,c as s,o as t,e as i,f as n,g as o,C as c,w as d,j as u,k as f,t as r,m as p,p as m,F as _,n as v,h as g,s as b,A as h,z as k,y,x as D,I as V,K as j}from"./index-l07Qi7HW.js";import{_ as x}from"./config-doctor.TgARj_nM.js";import{c as I}from"./navigation.C4wbrbVp.js";import w from"./pages-treatment-treatment.BEP7wWAJ.js";import{_ as C}from"./_plugin-vue_export-helper.BCo6x5W8.js";import"./pages-assessment-assessment.CXwqU_Dk.js";const A=C(e({__name:"diagnosis",props:{caseItem:{}},emits:["open-settings","open-profile","go-home"],setup(e,{emit:C}){const A=e,O=C,P=I(O),U=a({primaryDiagnosis:"",differentialDiagnosis:["",""],evidence:""}),S=l("王主任建议:请结合患者主诉和问诊信息,完成主要诊断、鉴别诊断和诊断依据。"),F=l(!1),$=l("idle"),z=l(""),G=l(!1),H=l(!1),K=s((()=>"陈先生")),q=s((()=>"男")),B=s((()=>60)),E=s((()=>"心血管内科")),J=s((()=>"胸痛")),L=s((()=>F.value?"提交中...":"submitted"===$.value?"已提交":"下一步"));function M(){var e,a,l;F.value||(F.value=!0,(a=(null==(e=A.caseItem)?void 0:e.id)||"mock-case",l={primaryDiagnosis:U.primaryDiagnosis,differentialDiagnosis:U.differentialDiagnosis.filter((e=>e.trim())),evidence:U.evidence},Promise.resolve({id:`mock-diagnosis-${Date.now()}`,caseId:a,...l,submittedAt:(new Date).toISOString()})).then((e=>{b("clinical-thinking-diagnosis",e),H.value=!0})).finally((()=>{F.value=!1})))}return t((function(){(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:""}})})(A.caseItem).then((e=>{S.value=e.mentorAdvice,U.primaryDiagnosis="",U.differentialDiagnosis=["",""],U.evidence=""}))})),i((()=>{})),(e,a)=>{const l=h,s=k,t=y,i=D,b=V,I=j;return H.value?(n(),o(w,{key:0,"case-item":e.caseItem,onOpenSettings:a[0]||(a[0]=e=>O("open-settings")),onOpenProfile:c(P),onGoHome:a[1]||(a[1]=e=>O("go-home"))},null,8,["case-item","onOpenProfile"])):(n(),o(s,{key:1,class:"diagnosis-page"},{default:d((()=>[u(s,{class:"diagnosis-shell"},{default:d((()=>[u(s,{class:"top-nav"},{default:d((()=>[u(l,{class:"icon-button","aria-label":"设置",onClick:a[2]||(a[2]=e=>O("open-settings"))}),u(l,{class:"icon-button home-button","aria-label":"首页",onClick:a[3]||(a[3]=e=>O("go-home"))},{default:d((()=>[u(s,{class:"home-icon"})])),_:1}),u(s,{class:"nav-spacer"}),u(l,{class:"icon-button","aria-label":"个人中心",onClick:c(P)},{default:d((()=>[u(s,{class:"account-icon"})])),_:1},8,["onClick"])])),_:1}),u(s,{class:"case-header"},{default:d((()=>[u(t,{class:"case-heading"},{default:d((()=>[f("患者:"+r(K.value)+" ("+r(J.value)+")",1)])),_:1}),u(s,{class:"patient-meta"},{default:d((()=>[u(t,null,{default:d((()=>[f("姓名:"+r(K.value),1)])),_:1}),u(t,null,{default:d((()=>[f("性别:"+r(q.value),1)])),_:1}),u(t,null,{default:d((()=>[f("年龄:"+r(B.value)+"岁",1)])),_:1}),u(t,null,{default:d((()=>[f("科室:"+r(E.value),1)])),_:1})])),_:1})])),_:1}),u(s,{class:"diagnosis-content"},{default:d((()=>[u(s,{class:"stepper"},{default:d((()=>[u(s,{class:"step-line"},{default:d((()=>[u(s,{class:"step-line-active"})])),_:1}),u(s,{class:"step done"},{default:d((()=>[u(s,{class:"step-dot"},{default:d((()=>[u(s,{class:"check-icon"})])),_:1}),u(t,null,{default:d((()=>[f("问诊")])),_:1})])),_:1}),u(s,{class:"step active"},{default:d((()=>[u(s,{class:"step-dot"},{default:d((()=>[u(s,{class:"stethoscope-icon"})])),_:1}),u(t,null,{default:d((()=>[f("临床诊断")])),_:1})])),_:1}),u(s,{class:"step"},{default:d((()=>[u(s,{class:"step-dot"},{default:d((()=>[u(s,{class:"pill-icon"})])),_:1}),u(t,null,{default:d((()=>[f("治疗计划")])),_:1})])),_:1})])),_:1}),u(s,{class:"mentor-card"},{default:d((()=>[u(s,{class:"mentor-avatar"},{default:d((()=>[u(i,{src:x,mode:"aspectFill"})])),_:1}),u(s,{class:"mentor-bubble"},{default:d((()=>[u(t,null,{default:d((()=>[f(r(S.value),1)])),_:1})])),_:1})])),_:1}),u(s,{class:"form-area"},{default:d((()=>[u(s,{class:"field-block"},{default:d((()=>[u(s,{class:"field-label primary"},{default:d((()=>[u(s,{class:"priority-icon"}),u(t,null,{default:d((()=>[f("主要诊断")])),_:1})])),_:1}),u(s,{class:"input-wrap"},{default:d((()=>[u(b,{class:"diagnosis-input",modelValue:U.primaryDiagnosis,"onUpdate:modelValue":a[4]||(a[4]=e=>U.primaryDiagnosis=e),type:"text",placeholder:"请输入初步诊断...","placeholder-class":"input-placeholder"},null,8,["modelValue"])])),_:1})])),_:1}),u(s,{class:"field-block"},{default:d((()=>[u(s,{class:"field-label"},{default:d((()=>[u(s,{class:"checklist-icon"}),u(t,null,{default:d((()=>[f("鉴别诊断")])),_:1})])),_:1}),u(s,{class:"diff-list"},{default:d((()=>[(n(!0),p(_,null,m(U.differentialDiagnosis,((e,a)=>(n(),o(s,{key:a,class:"diff-row"},{default:d((()=>[u(t,{class:"diff-index"},{default:d((()=>[f(r(a+1),1)])),_:2},1024),u(b,{class:"diff-input",modelValue:U.differentialDiagnosis[a],"onUpdate:modelValue":e=>U.differentialDiagnosis[a]=e,type:"text",placeholder:`备选诊断 ${a+1}`,"placeholder-class":"input-placeholder"},null,8,["modelValue","onUpdate:modelValue","placeholder"])])),_:2},1024)))),128))])),_:1})])),_:1}),u(s,{class:"field-block"},{default:d((()=>[u(s,{class:"field-label"},{default:d((()=>[u(s,{class:"description-icon"}),u(t,null,{default:d((()=>[f("诊断依据")])),_:1})])),_:1}),u(I,{class:"evidence-input",modelValue:U.evidence,"onUpdate:modelValue":a[5]||(a[5]=e=>U.evidence=e),placeholder:"请简述诊断依据,如:患者高龄、剧烈撕裂样胸痛、血压双侧不对称等...","placeholder-class":"input-placeholder"},null,8,["modelValue"])])),_:1})])),_:1}),u(l,{class:v(["next-button",{submitted:"submitted"===$.value}]),disabled:F.value,onClick:M},{default:d((()=>[F.value?(n(),o(s,{key:0,class:"spinner"})):g("",!0),u(t,null,{default:d((()=>[f(r(L.value),1)])),_:1}),F.value||"submitted"===$.value?g("",!0):(n(),o(s,{key:1,class:"arrow-icon"})),"submitted"===$.value?(n(),o(s,{key:2,class:"check-small-icon"})):g("",!0)])),_:1},8,["class","disabled"])])),_:1})])),_:1}),u(s,{class:v(["toast",{visible:G.value}])},{default:d((()=>[f(r(z.value),1)])),_:1},8,["class"])])),_:1}))}}}),[["__scopeId","data-v-04126bf9"]]);export{A as default};