const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/edit-DZcGEZUl.js","assets/.pnpm-CLkClvFH.js","assets/.pnpm-BtiqMGM_.css","assets/tcm-qR_1zllR.js","assets/index-2aR260j0.js","assets/index-ynJZC2Ez.css","assets/perm-D7h-JkPZ.js","assets/DailyMatrix-7O4VEJfc.js","assets/picker-CvdHqRr8.js","assets/index-C4Y2otYS.js","assets/index-B3imPWFk.css","assets/index-nw8QtLDo.js","assets/index.vue_vue_type_script_setup_true_lang-CkTCzcR4.js","assets/index-BTGPUL1v.js","assets/index-D0f1Mn00.css","assets/index-BNVSHi7K.js","assets/file-BtoQuLN_.js","assets/index.vue_vue_type_script_setup_true_lang-BqzZSXmO.js","assets/usePaging-22V4hi3A.js","assets/index-BYOmK9R5.css","assets/picker-XZbUgFct.css","assets/DiagnosisTodoList-CIM8ubmd.js","assets/DiagnosisTodoList-D0SBmTHG.css","assets/blood-thresholds-CJ1fqMjh.js","assets/DailyMatrix-DCZnxI8i.css","assets/CaseRecordList-CeTSX1EW.js","assets/CaseRecordList-Cl-c3q7S.css","assets/CallRecordPanel-9WMmJBWo.js","assets/RecordingPlaybackBlock-jltEuViO.js","assets/RecordingVideoPlayer-akestCw0.js","assets/RecordingVideoPlayer-4DegHAwm.css","assets/RecordingPlaybackBlock-B3KYFgvg.css","assets/CallRecordPanel-TsjZtTO8.css","assets/ImChatRecordPanel-dvBGYSC7.js","assets/dayjs-B1oVjCBe.js","assets/im-business-message-parse-CBCIOBjN.js","assets/ImChatRecordPanel-aX8zpWRQ.css","assets/AssignLogPanel-D4PFRUN0.js","assets/AssignLogPanel-DkQMoEkX.css","assets/AppointmentRecordPanel-DNz0jBSv.js","assets/doctor-DbSJjXsz.js","assets/AppointmentRecordPanel-DC22GDgn.css","assets/NoteTimeline-C1KiSrjF.js","assets/patient-DAW3yx_3.js","assets/NoteTimeline-I2FSxX4s.css","assets/PatientOrderList-DzCE6W-S.js","assets/PrescriptionOrderDetailDrawer-Da_ZNCHJ.js","assets/prescription-order-utils-B0fYlULc.js","assets/PrescriptionOrderDetailDrawer-DnrTcbh_.css","assets/PatientOrderList-D8-uh2iu.css","assets/index-CQ2zTS6g.js","assets/index-BL3S1Ic8.js","assets/medicine-Dp2zeaFn.js","assets/index-Bu4RT9fX.css","assets/diabetes-discovery-display-B_wmGXQJ.js","assets/index-CmvUWP8L.css","assets/edit-DOd7Lhrw.css","assets/TrackingNoteTimeline-B9T8pFso.css","assets/appointment-DDpGJeTP.js","assets/first_visit-BKFrF1T2.js","assets/appointment-BmvdInUs.css","assets/OrderPanel-DMlS4-20.js","assets/OrderActionHost-ANwItk6-.js","assets/OrderActionHost-l_dVpDKK.css","assets/OrderPanel-B3pAQxXF.css","assets/ProgressPanel-DZX_M9BC.js","assets/ProgressPanel-Cm25AULh.css"])))=>i.map(i=>d[i]); import{o as it,W as dt,ap as rt,q as m,r as Y,s as n,v as l,D as s,L as u,T as r,br as ut,u as c,by as mt,K as pt,Y as _t,X as ct,ac as ke,b7 as ft,b8 as Ce,bA as De,bc as gt,F as M,G as oe,bb as vt,bp as yt,w as bt,ce as Ve,cS as kt,cO as Ct,O as g,bj as Dt,bk as Vt,P as D,ae as Et,bB as xt,bi as Yt,C as Rt,ad as wt,bg as Nt,b9 as Pt,b6 as It,bm as ht,bn as At,bd as $t,bt as St,b5 as Mt,cb as K,al as j,M as _,ba as ie,p as E}from"./.pnpm-CLkClvFH.js";import{_ as Ft}from"./index.vue_vue_type_script_setup_true_lang-CkTCzcR4.js";import{d as Lt}from"./dayjs-B1oVjCBe.js";import{u as Ot}from"./usePaging-22V4hi3A.js";import{h as F}from"./perm-D7h-JkPZ.js";import{u as qt,i as f,_ as Tt}from"./index-2aR260j0.js";import{r as Ut,s as Bt,t as Wt,u as zt,v as Qt}from"./first_visit-BKFrF1T2.js";import{R as Kt}from"./tcm-qR_1zllR.js";import{g as jt}from"./weapp-Dv1n2NZe.js";const Gt={class:"my-patients-page"},Xt={class:"page-heading"},Ht={class:"heading-actions"},Jt={class:"filter-panel"},Zt={class:"filter-row filter-row-main"},ea={class:"filter-group status-group"},ta={class:"filter-row date-filter-row"},aa={class:"quick-dates"},na={class:"summary-grid"},la={class:"summary-icon"},sa={class:"summary-copy"},oa={class:"summary-date"},ia={class:"summary-icon"},da={class:"summary-copy"},ra={class:"summary-date"},ua={class:"summary-icon"},ma={class:"summary-copy"},pa={class:"summary-date"},_a={class:"table-heading"},ca={class:"table-scope"},fa={class:"patient-cell"},ga={class:"patient-avatar"},va={class:"doctor-cell"},ya={class:"revisit-count"},ba={class:"row-actions"},ka={class:"pagination-wrap"},Ca={class:"dialog-patient-name"},Da={class:"inherit-field"},Va={class:"dialog-patient-name"},Ea={class:"qrcode-body"},xa=["src"],Ya={class:"qrcode-meta"},Ra={key:2,class:"qrcode-error"},wa=it({__name:"index",setup(Na){const Ee=K(()=>j(()=>import("./edit-DZcGEZUl.js"),__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57]))),xe=K(()=>j(()=>import("./appointment-DDpGJeTP.js"),__vite__mapDeps([58,1,2,34,3,4,5,40,59,60]))),Ye=K(()=>j(()=>import("./OrderPanel-DMlS4-20.js"),__vite__mapDeps([61,1,2,12,18,59,4,5,62,46,3,47,48,6,63,64]))),Re=K(()=>j(()=>import("./ProgressPanel-DZX_M9BC.js"),__vite__mapDeps([65,1,2,12,34,18,59,4,5,66]))),G=dt(),we=qt(),V=_("patients"),w=_("all"),L=_([]),de=_(),re=_(),X=_(),H=_(),O=_(!1),q=_(!1),T=_(""),N=_(null),P=_(!1),J=_(!1),Z=_(!1),U=_([]),I=_(null),k=ie({assistant_id:null,is_inherit:!1}),h=_(!1),B=_(!1),ee=_(),v=ie({id:0,patient_name:"",id_card:""}),d=ie({keyword:"",status_filter:"",start_date:"",end_date:""}),Ne=[{label:"全部",value:""},{label:"未预约",value:"unbooked"},{label:"待面诊",value:"pending_interview"},{label:"已完成",value:"completed"},{label:"已过号",value:"missed"}],Pe=[{label:"全部时间",value:"all"},{label:"今日挂号",value:"today"},{label:"明日",value:"tomorrow"},{label:"后天",value:"day_after"},{label:"近7天",value:"last7"},{label:"近30天",value:"last30"}],{pager:y,getLists:A,resetPage:$}=Ot({fetchFun:Ut,params:d,size:15,firstLoading:!0}),te=E(()=>{var t,e,i,o,p,b;return{today:Number(((e=(t=y.extend)==null?void 0:t.summary)==null?void 0:e.today)||0),tomorrow:Number(((o=(i=y.extend)==null?void 0:i.summary)==null?void 0:o.tomorrow)||0),day_after:Number(((b=(p=y.extend)==null?void 0:p.summary)==null?void 0:b.day_after)||0)}}),ae=E(()=>{var t;return((t=y.extend)==null?void 0:t.dates)||{}}),ue=E(()=>{var t,e;return((e=(t=y.extend)==null?void 0:t.scope)==null?void 0:e.label)||"按权限加载"}),me=E(()=>F(["tcm.diagnosis/edit"])),pe=E(()=>F(["tcm.diagnosis/readonlyDetail"])),ne=E(()=>F(["tcm.diagnosis/guahao"])),Ie=E(()=>F(["tcm.diagnosis/assign"])),he=E(()=>F(["tcm.diagnosis/edit"])),Ae=E(()=>{var t,e;return V.value==="orders"?!!((t=X.value)!=null&&t.loading):V.value==="progress"?!!((e=H.value)!=null&&e.loading):y.loading});function le(){$()}function $e(){$()}function W(){var t,e,i,o;return V.value==="orders"?(e=(t=X.value)==null?void 0:t.refresh)==null?void 0:e.call(t):V.value==="progress"?(o=(i=H.value)==null?void 0:i.refresh)==null?void 0:o.call(i):A()}function Se(){d.keyword="",d.status_filter="",d.start_date="",d.end_date="",w.value="all",L.value=[],$()}function z(t){w.value=t,L.value=[];const e=Lt();t==="all"?(d.start_date="",d.end_date=""):t==="today"?(d.start_date=e.format("YYYY-MM-DD"),d.end_date=d.start_date):t==="tomorrow"?(d.start_date=e.add(1,"day").format("YYYY-MM-DD"),d.end_date=d.start_date):t==="day_after"?(d.start_date=e.add(2,"day").format("YYYY-MM-DD"),d.end_date=d.start_date):t==="last7"?(d.start_date=e.subtract(6,"day").format("YYYY-MM-DD"),d.end_date=e.format("YYYY-MM-DD")):t==="last30"&&(d.start_date=e.subtract(29,"day").format("YYYY-MM-DD"),d.end_date=e.format("YYYY-MM-DD")),$()}function Me(t){t!=null&&t.length?(w.value="custom",d.start_date=t[0]||"",d.end_date=t[1]||t[0]||""):(w.value="all",d.start_date="",d.end_date=""),$()}function Q(t){var e,i;if(!me.value){_e(t);return}(i=(e=de.value)==null?void 0:e.open)==null||i.call(e,"edit",Number(t.diagnosis_id||t.id))}function _e(t){if(!pe.value){f.msgWarning("当前角色没有诊单查看权限");return}const e=G.getRoutes().find(i=>{var o;return((o=i.meta)==null?void 0:o.perms)==="tcm.diagnosis/readonlyDetail"});e!=null&&e.path?G.push({path:e.path,query:{id:String(t.diagnosis_id||t.id)}}):G.push({path:"/tcm/diagnosis-readonly",query:{id:String(t.diagnosis_id||t.id)}})}function Fe(t){var e,i;(i=(e=re.value)==null?void 0:e.open)==null||i.call(e,{...t,id:Number(t.diagnosis_id||t.id),patient_id:Number(t.diagnosis_id||t.id)})}function Le(t){const e=String((t==null?void 0:t.name)||(t==null?void 0:t.account)||`医助${(t==null?void 0:t.id)||""}`),i=String((t==null?void 0:t.dept_names)||"").trim();return i?`${e} · ${i}`:e}async function Oe(){Z.value=!0;try{const t=await Qt();U.value=Array.isArray(t)?t:[]}catch(t){U.value=[],f.msgError((t==null?void 0:t.msg)||"医助列表加载失败")}finally{Z.value=!1}}async function qe(t){I.value=t,k.assistant_id=Number(t.assistant_id)>0?Number(t.assistant_id):null,k.is_inherit=!1,P.value=!0,U.value.length===0&&await Oe()}async function Te(){var e,i;const t=Number(((e=I.value)==null?void 0:e.diagnosis_id)||((i=I.value)==null?void 0:i.id));if(t<=0){f.msgWarning("患者诊单信息不完整");return}if(!k.assistant_id){f.msgWarning("请选择医助");return}J.value=!0;try{await Bt({id:t,assistant_id:Number(k.assistant_id),is_inherit:k.is_inherit?1:0}),f.msgSuccess("指派成功"),P.value=!1,await A()}catch(o){f.msgError((o==null?void 0:o.msg)||"指派失败")}finally{J.value=!1}}const Ue={id_card:[{required:!0,validator:(t,e,i)=>{const o=String(e||"").trim();if(!o){i(new Error("请输入身份证号"));return}const p=/^[1-9]\d{5}(18|19|20)\d{2}(0[1-9]|1[0-2])(0[1-9]|[12]\d|3[01])\d{3}[\dXx]$/.test(o),b=/^[1-9]\d{5}\d{2}(0[1-9]|1[0-2])(0[1-9]|[12]\d|3[01])\d{3}$/.test(o);i(p||b?void 0:new Error("请输入15或18位有效身份证号"))},trigger:"blur"}]};function Be(t){v.id=Number(t.diagnosis_id||t.id),v.patient_name=String(t.patient_name||""),v.id_card="",h.value=!0}function We(){var t,e;v.id=0,v.patient_name="",v.id_card="",(e=(t=ee.value)==null?void 0:t.clearValidate)==null||e.call(t)}async function ce(){var t,e;if(!B.value){try{await((e=(t=ee.value)==null?void 0:t.validate)==null?void 0:e.call(t))}catch{return}B.value=!0;try{await Wt({id:v.id,id_card:v.id_card.trim()}),f.msgSuccess("补全成功,年龄已自动更新"),h.value=!1,await A()}catch(i){f.msgError((i==null?void 0:i.msg)||"补全身份证失败")}finally{B.value=!1}}}function fe(t){return ne.value&&Number(t.appointment_id)>0&&Number(t.appointment_status)===1&&Number(t.appointment_doctor_id)>0}async function ge(t){var o;if(!fe(t)){f.msgWarning("仅已挂号患者可以生成诊单二维码");return}const e=Number(t.diagnosis_id||t.id),i=Number(t.source_patient_id||t.diagnosis_id||t.id);if(e<=0||i<=0){f.msgWarning("患者诊单信息不完整");return}N.value=t,O.value=!0,q.value=!0,T.value="";try{const p=await jt();if(!(p!=null&&p.app_id))throw new Error("小程序未配置,请先配置小程序信息");const b=await Kt({diagnosis_id:e,doctor_id:Number(t.appointment_doctor_id),patient_id:i,share_user_id:((o=we.userInfo)==null?void 0:o.id)||""});if(!(b!=null&&b.qrcode_url))throw new Error("二维码生成失败");T.value=b.qrcode_url}catch(p){f.msgError((p==null?void 0:p.msg)||(p==null?void 0:p.message)||"生成二维码失败,请重试")}finally{q.value=!1}}function ze(){N.value&&ge(N.value)}function ve(t){return Number(t.appointment_id)>0&&[1,4].includes(Number(t.appointment_status))}async function Qe(t){if(ve(t))try{await f.confirm(`确定取消“${t.patient_name||"该患者"}”的挂号吗?`),await zt({id:Number(t.appointment_id)}),f.msgSuccess("取消挂号成功"),await W()}catch(e){e!=="cancel"&&f.msgError((e==null?void 0:e.msg)||"取消挂号失败")}}function Ke(t){return String(t||"患").trim().slice(0,1)}function je(t){return{1:"primary",3:"success",4:"warning"}[Number(t)]||"info"}function Ge({row:t}){return t.confirmed?Number(t.appointment_status)===4?"patient-row-missed":"":"patient-row-unconfirmed"}return rt(()=>{A()}),(t,e)=>{const i=ut,o=pt,p=ct,b=_t,ye=ft,Xe=vt,He=gt,Je=yt,S=bt,x=Vt,Ze=xt,et=Dt,tt=Ft,at=Nt,R=It,nt=At,lt=ht,st=$t,be=Pt,se=St,ot=Yt;return m(),Y("div",Gt,[n("div",Xt,[e[18]||(e[18]=n("div",null,[n("div",{class:"eyebrow"},"一诊"),n("h1",null,"我的患者"),n("p",null,"患者、挂号与诊单信息按当前角色和部门数据范围展示")],-1)),n("div",Ht,[l(i,{effect:"plain",round:""},{default:s(()=>[u(r(ue.value),1)]),_:1}),l(o,{icon:c(mt),loading:Ae.value,onClick:W},{default:s(()=>[...e[17]||(e[17]=[u("刷新",-1)])]),_:1},8,["icon","loading"])])]),l(at,{class:"workspace-card",shadow:"never"},{default:s(()=>[l(b,{modelValue:V.value,"onUpdate:modelValue":e[0]||(e[0]=a=>V.value=a),class:"workspace-tabs"},{default:s(()=>[l(p,{label:"患者列表",name:"patients"}),l(p,{label:"订单管理",name:"orders"}),l(p,{label:"面诊进度",name:"progress"})]),_:1},8,["modelValue"]),ke(n("div",null,[n("div",Jt,[n("div",Zt,[l(ye,{modelValue:d.keyword,"onUpdate:modelValue":e[1]||(e[1]=a=>d.keyword=a),class:"keyword-input",clearable:"","prefix-icon":c(De),placeholder:"患者姓名 / 手机号 / 助理 / 医生",onKeyup:Ce(le,["enter"]),onClear:le},null,8,["modelValue","prefix-icon"]),n("div",ea,[e[19]||(e[19]=n("span",{class:"filter-label"},"状态",-1)),l(He,{modelValue:d.status_filter,"onUpdate:modelValue":e[2]||(e[2]=a=>d.status_filter=a),onChange:$e},{default:s(()=>[(m(),Y(M,null,oe(Ne,a=>l(Xe,{key:a.value,value:a.value},{default:s(()=>[u(r(a.label),1)]),_:2},1032,["value"])),64))]),_:1},8,["modelValue"])]),l(o,{type:"primary",icon:c(De),onClick:le},{default:s(()=>[...e[20]||(e[20]=[u("查询",-1)])]),_:1},8,["icon"]),l(o,{onClick:Se},{default:s(()=>[...e[21]||(e[21]=[u("重置",-1)])]),_:1})]),n("div",ta,[e[22]||(e[22]=n("span",{class:"filter-label"},"挂号时间",-1)),n("div",aa,[(m(),Y(M,null,oe(Pe,a=>l(o,{key:a.value,type:w.value===a.value?"primary":"default",onClick:C=>z(a.value)},{default:s(()=>[u(r(a.label),1)]),_:2},1032,["type","onClick"])),64))]),l(Je,{modelValue:L.value,"onUpdate:modelValue":e[3]||(e[3]=a=>L.value=a),class:"date-range",type:"daterange","range-separator":"至","start-placeholder":"开始日期","end-placeholder":"结束日期","value-format":"YYYY-MM-DD",clearable:!0,onChange:Me},null,8,["modelValue"])])]),n("div",na,[n("button",{class:"summary-card summary-today",type:"button",onClick:e[4]||(e[4]=a=>z("today"))},[n("span",la,[l(S,null,{default:s(()=>[l(c(Ve))]),_:1})]),n("span",sa,[e[23]||(e[23]=n("small",null,"今日预约",-1)),n("strong",null,r(te.value.today),1),e[24]||(e[24]=n("em",null,"人",-1))]),n("span",oa,r(ae.value.today||"—"),1)]),n("button",{class:"summary-card summary-tomorrow",type:"button",onClick:e[5]||(e[5]=a=>z("tomorrow"))},[n("span",ia,[l(S,null,{default:s(()=>[l(c(kt))]),_:1})]),n("span",da,[e[25]||(e[25]=n("small",null,"明日预约",-1)),n("strong",null,r(te.value.tomorrow),1),e[26]||(e[26]=n("em",null,"人",-1))]),n("span",ra,r(ae.value.tomorrow||"—"),1)]),n("button",{class:"summary-card summary-after",type:"button",onClick:e[6]||(e[6]=a=>z("day_after"))},[n("span",ua,[l(S,null,{default:s(()=>[l(c(Ve))]),_:1})]),n("span",ma,[e[27]||(e[27]=n("small",null,"后天预约",-1)),n("strong",null,r(te.value.day_after),1),e[28]||(e[28]=n("em",null,"人",-1))]),n("span",pa,r(ae.value.day_after||"—"),1)])]),n("div",_a,[n("div",null,[e[29]||(e[29]=n("h2",null,"患者列表",-1)),n("span",null,"共 "+r(c(y).count)+" 位患者",1)]),n("span",ca,[l(S,null,{default:s(()=>[l(c(Ct))]),_:1}),u(r(ue.value),1)])]),ke((m(),g(et,{data:c(y).lists,class:"patient-table","row-class-name":Ge,onRowDblclick:Q},{empty:s(()=>[l(Ze,{description:"当前范围内暂无患者"})]),default:s(()=>[l(x,{label:"患者","min-width":"190",fixed:"left"},{default:s(({row:a})=>[n("div",fa,[n("span",ga,r(Ke(a.patient_name)),1),n("div",null,[n("strong",null,r(a.patient_name||"未命名患者"),1),n("p",null,r(a.gender_desc)+" · "+r(a.age||"—")+"岁 · "+r(a.phone_masked||"无手机号"),1)])])]),_:1}),l(x,{prop:"assistant_name",label:"归属助理","min-width":"120"}),l(x,{label:"预约医生","min-width":"150"},{default:s(({row:a})=>[n("div",va,[n("span",null,r(a.appointment_doctor_name||"未预约"),1),a.appointment_status?(m(),g(i,{key:0,size:"small",type:je(a.appointment_status),effect:"light"},{default:s(()=>[u(r(a.appointment_status_text),1)]),_:2},1032,["type"])):D("",!0)])]),_:1}),l(x,{label:"预约时间","min-width":"165"},{default:s(({row:a})=>[n("span",{class:Et(["appointment-time",{empty:!a.appointment_time_text}])},r(a.appointment_time_text||"暂无预约"),3)]),_:1}),l(x,{label:"复诊次数",width:"105",align:"center"},{default:s(({row:a})=>[n("span",ya,r(a.revisit_count||0)+" 次",1)]),_:1}),l(x,{label:"确认信息",width:"110",align:"center"},{default:s(({row:a})=>[l(i,{size:"small",type:a.confirmed?"success":"warning",effect:"light"},{default:s(()=>[u(r(a.confirmation_text),1)]),_:2},1032,["type"])]),_:1}),l(x,{label:"诊单日期",width:"118"},{default:s(({row:a})=>[u(r(a.diagnosis_date_text||"—"),1)]),_:1}),l(x,{label:"操作","min-width":"430",fixed:"right"},{default:s(({row:a})=>[n("div",ba,[me.value?(m(),g(o,{key:0,type:"primary",link:"",onClick:C=>Q(a)},{default:s(()=>[...e[30]||(e[30]=[u("诊单",-1)])]),_:1},8,["onClick"])):pe.value?(m(),g(o,{key:1,type:"primary",link:"",onClick:C=>_e(a)},{default:s(()=>[...e[31]||(e[31]=[u("查看",-1)])]),_:1},8,["onClick"])):D("",!0),ne.value?(m(),g(o,{key:2,type:"primary",link:"",onClick:C=>Fe(a)},{default:s(()=>[...e[32]||(e[32]=[u("预约",-1)])]),_:1},8,["onClick"])):D("",!0),Ie.value?(m(),g(o,{key:3,type:"warning",link:"",onClick:C=>qe(a)},{default:s(()=>[u(r(Number(a.assistant_id)>0?"重新指派":"指派"),1)]),_:2},1032,["onClick"])):D("",!0),he.value&&!Number(a.has_id_card)?(m(),g(o,{key:4,type:"warning",link:"",onClick:C=>Be(a)},{default:s(()=>[...e[33]||(e[33]=[u(" 补全身份证 ",-1)])]),_:1},8,["onClick"])):D("",!0),fe(a)?(m(),g(o,{key:5,type:"primary",link:"",onClick:C=>ge(a)},{default:s(()=>[...e[34]||(e[34]=[u(" 诊单二维码 ",-1)])]),_:1},8,["onClick"])):D("",!0),ne.value&&ve(a)?(m(),g(o,{key:6,type:"danger",link:"",onClick:C=>Qe(a)},{default:s(()=>[...e[35]||(e[35]=[u(" 取消挂号 ",-1)])]),_:1},8,["onClick"])):D("",!0)])]),_:1})]),_:1},8,["data"])),[[ot,c(y).loading]]),n("div",ka,[l(tt,{modelValue:c(y),"onUpdate:modelValue":e[7]||(e[7]=a=>Rt(y)?y.value=a:null),onChange:c(A)},null,8,["modelValue","onChange"])])],512),[[wt,V.value==="patients"]]),V.value==="orders"?(m(),g(c(Ye),{key:0,ref_key:"orderPanelRef",ref:X,onOpenDiagnosis:Q},null,512)):D("",!0),V.value==="progress"?(m(),g(c(Re),{key:1,ref_key:"progressPanelRef",ref:H,onOpenDiagnosis:Q},null,512)):D("",!0)]),_:1}),l(c(Ee),{ref_key:"editRef",ref:de,onSuccess:W},null,512),l(c(xe),{ref_key:"appointmentRef",ref:re,"api-scene":"my_patient",onSuccess:W},null,512),l(se,{modelValue:P.value,"onUpdate:modelValue":e[11]||(e[11]=a=>P.value=a),title:"指派医助",width:"500px","close-on-click-modal":!1},{footer:s(()=>[l(o,{onClick:e[10]||(e[10]=a=>P.value=!1)},{default:s(()=>[...e[38]||(e[38]=[u("取消",-1)])]),_:1}),l(o,{type:"primary",loading:J.value,onClick:Te},{default:s(()=>[...e[39]||(e[39]=[u("确定指派",-1)])]),_:1},8,["loading"])]),default:s(()=>[l(be,{model:k,"label-width":"88px"},{default:s(()=>[l(R,{label:"患者"},{default:s(()=>{var a;return[n("span",Ca,r(((a=I.value)==null?void 0:a.patient_name)||"—"),1)]}),_:1}),l(R,{label:"当前助理"},{default:s(()=>{var a;return[n("span",null,r(((a=I.value)==null?void 0:a.assistant_name)||"未分配"),1)]}),_:1}),l(R,{label:"选择医助",required:""},{default:s(()=>[l(lt,{modelValue:k.assistant_id,"onUpdate:modelValue":e[8]||(e[8]=a=>k.assistant_id=a),class:"dialog-full-width",filterable:"",clearable:"",loading:Z.value,placeholder:"请选择当前范围内的医助"},{default:s(()=>[(m(!0),Y(M,null,oe(U.value,a=>(m(),g(nt,{key:a.id,label:Le(a),value:Number(a.id)},null,8,["label","value"]))),128))]),_:1},8,["modelValue","loading"])]),_:1}),l(R,{label:"继承"},{default:s(()=>[n("div",Da,[l(st,{modelValue:k.is_inherit,"onUpdate:modelValue":e[9]||(e[9]=a=>k.is_inherit=a)},{default:s(()=>[...e[36]||(e[36]=[u("作为继承指派",-1)])]),_:1},8,["modelValue"]),e[37]||(e[37]=n("small",null,"用于区分继承关系,指派操作仍会完整记录。",-1))])]),_:1})]),_:1},8,["model"])]),_:1},8,["modelValue"]),l(se,{modelValue:h.value,"onUpdate:modelValue":e[14]||(e[14]=a=>h.value=a),title:"补全身份证号",width:"430px","close-on-click-modal":!1,onClosed:We},{footer:s(()=>[l(o,{onClick:e[13]||(e[13]=a=>h.value=!1)},{default:s(()=>[...e[40]||(e[40]=[u("取消",-1)])]),_:1}),l(o,{type:"primary",loading:B.value,onClick:ce},{default:s(()=>[...e[41]||(e[41]=[u(" 提交并更新年龄 ",-1)])]),_:1},8,["loading"])]),default:s(()=>[l(be,{ref_key:"fillIdCardFormRef",ref:ee,model:v,rules:Ue,"label-width":"88px"},{default:s(()=>[l(R,{label:"患者"},{default:s(()=>[n("span",Va,r(v.patient_name||"—"),1)]),_:1}),l(R,{label:"身份证号",prop:"id_card"},{default:s(()=>[l(ye,{modelValue:v.id_card,"onUpdate:modelValue":e[12]||(e[12]=a=>v.id_card=a),maxlength:"18",clearable:"","show-word-limit":"",placeholder:"请输入15或18位身份证号",onKeyup:Ce(ce,["enter"])},null,8,["modelValue"])]),_:1})]),_:1},8,["model"])]),_:1},8,["modelValue"]),l(se,{modelValue:O.value,"onUpdate:modelValue":e[16]||(e[16]=a=>O.value=a),title:"诊单二维码",width:"400px","close-on-click-modal":!1},{footer:s(()=>[l(o,{onClick:e[15]||(e[15]=a=>O.value=!1)},{default:s(()=>[...e[44]||(e[44]=[u("关闭",-1)])]),_:1}),q.value?D("",!0):(m(),g(o,{key:0,type:"primary",onClick:ze},{default:s(()=>[...e[45]||(e[45]=[u("重新生成",-1)])]),_:1}))]),default:s(()=>{var a,C;return[n("div",Ea,[q.value?(m(),Y(M,{key:0},[l(S,{class:"is-loading",size:40},{default:s(()=>[l(c(Mt))]),_:1}),e[42]||(e[42]=n("span",null,"二维码生成中...",-1))],64)):T.value?(m(),Y(M,{key:1},[n("img",{src:T.value,alt:"诊单二维码",class:"qrcode-image"},null,8,xa),n("div",Ya,[n("div",null,"患者:"+r(((a=N.value)==null?void 0:a.patient_name)||"—"),1),n("div",null,"挂号时间:"+r(((C=N.value)==null?void 0:C.appointment_time_text)||"—"),1),e[43]||(e[43]=n("div",null,"请使用企业微信扫描二维码,然后转发给患者",-1))])],64)):(m(),Y("span",Ra,"生成失败,请重试"))])]}),_:1},8,["modelValue"])])}}}),qa=Tt(wa,[["__scopeId","data-v-c6468bce"]]);export{qa as default};