3 lines
56 KiB
JavaScript
3 lines
56 KiB
JavaScript
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/edit-BmzpoZBi.js","assets/element-plus-DDINy080.js","assets/@vue/runtime-dom-DDAG46FW.js","assets/lodash-D3kF6u-c.js","assets/@vue/runtime-core-C6bnekPw.js","assets/@vue/reactivity-DiY1c2vO.js","assets/@vue/shared-mAAVTE9n.js","assets/@element-plus/icons-vue-CbYn5zW9.js","assets/lodash-es-C2A-Pj28.js","assets/@popperjs/core-C5az9QE8.js","assets/dayjs-DG77mNTn.js","assets/@ctrl/tinycolor-BuyEbX8F.js","assets/async-validator-CFA_igpM.js","assets/normalize-wheel-es-BQoi3Ox2.js","assets/element-plus-CyhMqouw.css","assets/tcm-GunznPcd.js","assets/index-CucNzNKR.js","assets/jspdf-BsthCvR5.js","assets/@babel/runtime-BanGtE2-.js","assets/fflate-_ayOYiT1.js","assets/vue-router-QlpZ4wdW.js","assets/pinia-B8cvXbiZ.js","assets/axios-C80V62Fs.js","assets/@vueuse/core-1S4fJlii.js","assets/@vueuse/shared-Cl3lVqjz.js","assets/css-color-function-DI01JAaZ.js","assets/balanced-match-BdS7OldZ.js","assets/color-B2zxaWkI.js","assets/clone-DBZ6_OiU.js","assets/color-convert-OrFsTA_V.js","assets/color-name-Dju3oUBS.js","assets/color-string-pUQDDJII.js","assets/ms-CzQ2E3wO.js","assets/vue-clipboard3-DByT_rEQ.js","assets/clipboard-CHgxszqY.js","assets/echarts-CNLwa9wG.js","assets/tslib-BDyQ-Jie.js","assets/zrender-DRNXw7y3.js","assets/highlight.js-Bxt7hFFy.js","assets/highlight-BfC0goYb.css","assets/@highlightjs/vue-plugin-C4onkBvW.js","assets/index-pi6f6xld.css","assets/perm-BnhoH_X2.js","assets/DailyMatrix-fJaMn06t.js","assets/picker-CjyOL5ux.js","assets/index-Dyen3QYL.js","assets/index-B3imPWFk.css","assets/index-BdAQ7-sl.js","assets/index.vue_vue_type_script_setup_true_lang-9cmfzJ44.js","assets/index-qDgvWZbM.js","assets/index-D0f1Mn00.css","assets/index-B5hK-bbc.js","assets/cos-js-sdk-v5-DSMN0LUT.js","assets/file-SIgfRLK3.js","assets/index.vue_vue_type_script_setup_true_lang-2wpGl-Qs.js","assets/usePaging-DofycyjW.js","assets/index-BYOmK9R5.css","assets/vuedraggable-5bKFmC7X.js","assets/vue-BVs68q8v.js","assets/@vue/compiler-dom-CqayqxS7.js","assets/@vue/compiler-core-CvbQOXIO.js","assets/sortablejs-dsEAUXlE.js","assets/picker-XZbUgFct.css","assets/vue-echarts-BNtg2q_G.js","assets/resize-detector-G6vbKCU7.js","assets/DiagnosisTodoList-CDVPxzWT.js","assets/DiagnosisTodoList-D0SBmTHG.css","assets/blood-thresholds-QpDuElbH.js","assets/DailyMatrix-CsOKtKmM.css","assets/FollowupAudioPanel-CHS6LBA_.js","assets/FollowupAudioReview-Cv2ObmWa.js","assets/FollowupAudioField-D4JqpESK.js","assets/FollowupAudioField-oZ__2Vqy.css","assets/FollowupAudioReview-BI71yCJD.css","assets/FollowupAudioPanel-DUnFkw1b.css","assets/CaseRecordList-TG_D08_F.js","assets/CaseRecordList-Cl-c3q7S.css","assets/CallRecordPanel--Ny_OHkF.js","assets/RecordingPlaybackBlock-1kkz8uQC.js","assets/RecordingVideoPlayer-DurIQa72.js","assets/RecordingVideoPlayer-4DegHAwm.css","assets/RecordingPlaybackBlock-B3KYFgvg.css","assets/CallRecordPanel-TsjZtTO8.css","assets/ImChatRecordPanel-sb0_KR9f.js","assets/im-business-message-parse-QKjFLn3X.js","assets/ImChatRecordPanel-CNRZQxnD.css","assets/AssignLogPanel-CsmEkfch.js","assets/AssignLogPanel-DP_rYm0w.css","assets/AppointmentRecordPanel-DuEtS9rH.js","assets/doctor-314tn1XV.js","assets/AppointmentRecordPanel-DC22GDgn.css","assets/NoteTimeline-DUReticg.js","assets/patient-BxRRKxoO.js","assets/NoteTimeline-I2FSxX4s.css","assets/PatientOrderList-CwUDKfCY.js","assets/PrescriptionOrderDetailDrawer-BcCZtcbd.js","assets/prescription-order-utils-CXfs2Bra.js","assets/PrescriptionOrderDetailDrawer-B4rggqa1.css","assets/PatientOrderList-D8-uh2iu.css","assets/index-BVU-JUq4.js","assets/index-DZ-AELs_.js","assets/medicine-B9SVZ633.js","assets/index-Bu4RT9fX.css","assets/diabetes-discovery-display-B_wmGXQJ.js","assets/index-DkiaPm7c.js","assets/index-AnyUcdTT.css","assets/html2canvas-QH1iLAAe.js","assets/index-DiBxknCJ.css","assets/edit-DssfAaML.css","assets/TrackingNoteTimeline-B9T8pFso.css","assets/detail-CuGFMLdQ.js","assets/appointment-Cbun1BPM.js","assets/first_visit-Dr_cz1Zy.js","assets/appointment-g8BrHfhi.css","assets/AssistantWatchCallDialog-x0JMzoct.js","assets/trtc-sdk-v5-D4DbeRqz.js","assets/AssistantWatchCallDialog-BIPZRgaH.css"])))=>i.map(i=>d[i]);
|
||
import{_ as ve}from"./jspdf-BsthCvR5.js";import{z as wa,A as Oa,i as Ma,d as Ua,K as qa,L as Ba,M as Qa,N as Ga,O as Ha,P as Ka,r as ja,p as Xa,n as Ja,o as Za,Q as es,W as ts,a8 as ns,a9 as as,e as ss,B as is,G as ls,F as os,J as ds,h as rs,a6 as us,a7 as ps,Y as _s,v as ms}from"./element-plus-DDINy080.js";import{_ as cs}from"./index.vue_vue_type_script_setup_true_lang-9cmfzJ44.js";import{w as zt,q as gs,s as ot}from"./@vue/runtime-dom-DDAG46FW.js";import{ax as F,o as fs,ay as vs,Y as ys,az as Fe,aA as hs,aB as ks,X as Ft,aC as Wt,aD as bs,aE as Cs,aF as xs,aG as Vs}from"./tcm-GunznPcd.js";import{i as Ds}from"./order-Dg1UGZXE.js";import{m as Yt}from"./doctor-314tn1XV.js";import{u as As}from"./usePaging-DofycyjW.js";import{u as Es,j as f,N as Rs,Q as Ss,W as Ts,n as dt,X as Ns,_ as Is}from"./index-CucNzNKR.js";import{g as wt}from"./weapp-BM6iVKpe.js";import{h as W}from"./perm-BnhoH_X2.js";import{a as $s,c as Ls}from"./appointment-type-DJT6wPaT.js";import{e as Ot,Z as Ps,av as zs,P as Mt,b as Fs,at as Ws,G as Ys,H as ws,l as Os}from"./@element-plus/icons-vue-CbYn5zW9.js";import{u as Ms,a as Us}from"./vue-router-QlpZ4wdW.js";import{d as We}from"./dayjs-DG77mNTn.js";import{_ as Ut}from"./index.vue_vue_type_script_setup_true_lang-CB4dOOG_.js";import qs from"./RevisitNodeCell-CLbmu7Oa.js";import{f as Bs}from"./diag-display-DCz_VAqj.js";import{f as qt,w as rt,b as Qs,d as Gs,as as Hs,ak as d,I as _,a as l,aN as i,J as u,F as A,ap as S,O as g,H as b,aP as N,G as v,P as ye,A as te}from"./@vue/runtime-core-C6bnekPw.js";import{o as Y,Q as m}from"./@vue/shared-mAAVTE9n.js";import{y as s,a as H,r as ut,n as c}from"./@vue/reactivity-DiY1c2vO.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./lodash-D3kF6u-c.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";const Ks={class:"tcm-diagnosis"},js={class:"filter-main"},Xs={class:"date-chips"},Js=["onClick"],Zs={key:0},ei={key:0},ti={key:0},ni={key:0},ai={class:"pending-assign-wrap"},si={key:0},ii={class:"search-row"},li={class:"filter-chips"},oi=["onClick"],di=["onClick"],ri={class:"filter-more"},ui={class:"list-header"},pi={class:"list-actions"},_i={key:0,class:"list-selected"},mi={class:"table-wrap px-4"},ci={class:"patient-cell"},gi={class:"patient-info"},fi={class:"patient-name"},vi={class:"patient-cell"},yi={class:"patient-info"},hi={class:"patient-name"},ki={class:"apt-badge"},bi={class:"apt-doctor"},Ci={class:"apt-time"},xi={key:0,class:"apt-actions"},Vi={class:"apt-badge"},Di={class:"apt-doctor"},Ai={class:"apt-time"},Ei={key:2,class:"apt-latest-channel"},Ri={key:1,class:"apt-none"},Si={key:0,class:"text-xs text-gray-500"},Ti={key:1,class:"apt-none"},Ni={key:0,class:"status-confirmed"},Ii={key:1,class:"status-unconfirmed"},$i={class:"assistant-cell"},Li={key:1,class:"unserved-days unserved-muted"},Pi={class:"video-watch-col"},zi={class:"video-watch-trigger"},Fi={key:1,class:"video-watch-muted"},Wi={key:1,class:"video-watch-muted"},Yi={class:"pagination-wrap"},wi={class:"min-h-[100px]"},Oi={key:0,class:"text-sm text-gray-600 mb-4 pb-3 border-b border-gray-100"},Mi={class:"font-medium text-gray-800"},Ui={class:"flex flex-wrap items-center gap-2"},qi={class:"text-sm font-medium text-gray-800"},Bi={class:"text-xs text-gray-600 mt-1.5 leading-relaxed"},Qi={class:"flex flex-col items-center justify-center py-4"},Gi={key:0,class:"text-center"},Hi={key:1,class:"text-center"},Ki=["src"],ji={class:"mt-4 text-sm text-gray-600"},Xi={class:"mt-2"},Ji={key:2,class:"text-center text-gray-500"},Zi={class:"text-gray-500"},el={class:"text-gray-500"},tl={class:"font-medium"},nl={class:"font-medium"},al={key:0,class:"mb-4"},sl={key:0},il={key:0,class:"mt-2"},ll={key:1,class:"mt-2"},ol={class:"mb-4"},dl={class:"flex gap-2"},rl={key:0,class:"text-center text-gray-400 py-10"},ul={key:1,class:"record-list"},pl={class:"record-header"},_l={class:"flex items-center gap-2"},ml={class:"font-medium text-sm"},cl={class:"flex items-center gap-2"},gl={class:"text-xs text-gray-400"},fl={class:"record-content"},vl={key:0,class:"mt-1"},yl={key:2,class:"text-center mt-4"},hl=qt({name:"tcmDiagnosis"}),kl=qt({...hl,setup(bl){const Bt=ye(()=>ve(()=>import("./edit-BmzpoZBi.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,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109]))),Qt=ye(()=>ve(()=>import("./detail-CuGFMLdQ.js"),__vite__mapDeps([110,45,1,2,3,4,5,6,7,8,9,10,11,12,13,14,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,46,15]))),Gt=ye(()=>ve(()=>import("./index-BVU-JUq4.js"),__vite__mapDeps([99,1,2,3,4,5,6,7,8,9,10,11,12,13,14,100,101,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,102,103,15,104,105,106,107]))),Ht=ye(()=>ve(()=>import("./appointment-Cbun1BPM.js"),__vite__mapDeps([111,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,89,112,113]))),Kt=ye(()=>ve(()=>import("./AssistantWatchCallDialog-x0JMzoct.js"),__vite__mapDeps([114,1,2,3,4,5,6,7,8,9,10,11,12,13,14,115,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,116]))),jt=t=>{if(!t)return"-";const e=String(t).length===10?Number(t)*1e3:Number(t);return We(e).format("YYYY-MM-DD HH:mm:ss")},pt=t=>!t||t.length<11?t:t.replace(/(\d{3})\d{4}(\d{4})/,"$1****$2"),a=ut({keyword:"",diagnosis_type:"",syndrome_type:"",assistant_id:"",start_time:"",end_time:"",latest_appointment_start_date:"",latest_appointment_end_date:"",latest_appointment_channel_source:"",latest_assign_start_date:"",latest_assign_end_date:"",sort_unserved_days:"",revisit_state:"",revisit_days_bucket:"",sort_revisit_due:"",diagnosis_confirmed:"",appointment_date:"",has_appointment:"",pending_assign:"",pending_booking:"",completed_appointment:"",pending_assign_order_month:"",pending_assign_keyword:""}),_t=c("all"),_e=c(!1),Xt=[{label:"全部",value:""},{label:"已挂号",value:"1"},{label:"未挂号",value:"0"}],Jt=[{label:"全部",value:""},{label:"已确认",value:"1"},{label:"未确认",value:"0"}],Zt=t=>{a.has_appointment=t,a.pending_booking="",a.completed_appointment="",t==="0"&&ie(),D.page=1,x(),T()},en=t=>{a.diagnosis_confirmed=t,a.pending_booking="",a.completed_appointment="",D.page=1,x(),T()};function tn(t){if(!(t.pending_assign==="1"||t.pending_assign===1))return!1;const o=String(t.pending_assign_keyword??"").trim(),p=String(t.keyword??"").trim();return o!==""||p!==""}function mt(t){if(!tn(t))return t;const e=String(t.pending_assign_keyword??"").trim(),o=String(t.keyword??"").trim(),p=e!==""?e:o;return{page_no:t.page_no,page_size:t.page_size,pending_assign:1,pending_assign_keyword:p}}function nn(){const t=String(a.pending_assign_order_month??"").trim();return t!==""?t:a.pending_assign==="1"?"":We().format("YYYY-MM")}function an(){return{keyword:a.keyword,diagnosis_type:a.diagnosis_type,syndrome_type:a.syndrome_type,assistant_id:a.assistant_id,diagnosis_confirmed:a.diagnosis_confirmed,has_appointment:a.has_appointment,latest_appointment_start_date:a.latest_appointment_start_date,latest_appointment_end_date:a.latest_appointment_end_date,latest_appointment_channel_source:a.latest_appointment_channel_source,latest_assign_start_date:a.latest_assign_start_date,latest_assign_end_date:a.latest_assign_end_date,revisit_state:a.revisit_state,revisit_days_bucket:a.revisit_days_bucket}}function w(t={}){return{page_no:1,page_size:1,...an(),appointment_date:"",pending_booking:"",completed_appointment:"",pending_assign:"",pending_assign_order_month:"",pending_assign_keyword:"",sort_unserved_days:"",revisit_state:"",sort_revisit_due:"",...t}}function sn(){return mt(w({pending_assign:1,has_appointment:"",pending_assign_order_month:nn(),pending_assign_keyword:a.pending_assign_keyword}))}const ln=t=>F(mt(t));function on(){if(a.pending_assign!=="1")return;const t=(a.pending_assign_keyword??"").trim(),e=(a.keyword??"").trim();t===""&&e===""||(a.appointment_date="",a.pending_booking="",a.completed_appointment="",a.diagnosis_confirmed="",a.has_appointment="",a.diagnosis_type="",a.syndrome_type="",a.assistant_id="",a.start_time="",a.end_time="",a.latest_appointment_start_date="",a.latest_appointment_end_date="",a.latest_appointment_channel_source="",a.latest_assign_start_date="",a.latest_assign_end_date="",a.sort_unserved_days="",a.revisit_state="",a.revisit_days_bucket="",a.sort_revisit_due="",a.pending_assign_order_month="",_t.value="all",t!==""&&(a.keyword=""))}const L=()=>{on(),D.page=1,x(),T()},dn=te(()=>[{label:"昨天挂号",value:Qe.value},{label:"前天挂号",value:Ge.value},{label:"当天挂号",value:be.value},{label:"明天挂号",value:qe.value},{label:"后天挂号",value:Be.value},{label:"全部",value:""}]),Ye=c({}),we=c(void 0),Oe=c(void 0),Me=c(void 0),rn=async t=>{a.pending_assign="",a.pending_assign_order_month="",a.pending_assign_keyword="",a.pending_booking="",a.completed_appointment="",a.has_appointment="",he(),ie(),a.appointment_date=t,D.page=1,await x(),T()},un=async()=>{a.pending_assign="",a.pending_assign_order_month="",a.pending_assign_keyword="",a.pending_booking="1",a.completed_appointment="",a.appointment_date="",a.has_appointment="0",he(),ie(),D.page=1,await x(),T()},pn=async()=>{a.pending_assign="",a.pending_assign_order_month="",a.pending_assign_keyword="",a.pending_booking="",a.completed_appointment="1",a.has_appointment="",a.appointment_date="",he(),ie(),D.page=1,await x(),T()},_n=async()=>{a.pending_assign="1",a.pending_booking="",a.completed_appointment="",a.has_appointment="",a.appointment_date="",he(),ie(),a.pending_assign_order_month||(a.pending_assign_order_month=We().format("YYYY-MM")),D.page=1,await x(),T()},mn=async t=>{a.pending_assign_order_month=t||"",a.pending_assign==="1"&&(D.page=1,await x(),T())},cn=Rs,gn=Ss,Ue=c(void 0),he=()=>{a.revisit_state="",a.sort_revisit_due=""},ct=async()=>{a.pending_assign="",a.pending_assign_order_month="",a.pending_assign_keyword="",a.pending_booking="",a.completed_appointment="",a.appointment_date="",a.has_appointment="",ie(),a.revisit_state="due",a.sort_revisit_due="asc",a.sort_unserved_days="",D.page=1,await x(),T()},fn=()=>{if(a.revisit_state!==""){a.appointment_date="",a.pending_booking="",a.completed_appointment="";const t=a.sort_revisit_due===""&&a.sort_unserved_days==="";a.revisit_state==="due"&&t&&(a.sort_revisit_due="asc")}else a.sort_revisit_due="";L()},gt=t=>Ts(t==null?void 0:t.revisit_due),vn=t=>t!=null&&t.has_prescription?t.followup_rx_voided?"已开方(处方已作废)":"已开方":"未开方",T=async()=>{try{const[t,e,o,p,r,y,V,$,pe,R]=await Promise.all([F(w({appointment_date:Qe.value,has_appointment:""})),F(w({appointment_date:Ge.value,has_appointment:""})),F(w({appointment_date:be.value,has_appointment:""})),F(w({appointment_date:qe.value,has_appointment:""})),F(w({appointment_date:Be.value,has_appointment:""})),F(w()),F(w({has_appointment:0})),F(w({completed_appointment:1,has_appointment:""})),F(sn()),F(w({revisit_state:"due",has_appointment:""}))]);Ye.value={[Qe.value]:(t==null?void 0:t.count)??0,[Ge.value]:(e==null?void 0:e.count)??0,[be.value]:(o==null?void 0:o.count)??0,[qe.value]:(p==null?void 0:p.count)??0,[Be.value]:(r==null?void 0:r.count)??0,"":(y==null?void 0:y.count)??0},we.value=(V==null?void 0:V.count)??0,Oe.value=($==null?void 0:$.count)??0,Me.value=(pe==null?void 0:pe.count)??0,Ue.value=(R==null?void 0:R.count)??0}catch(t){console.error("获取日期数量失败",t)}};function yn(){const t=()=>T();typeof requestIdleCallback=="function"?requestIdleCallback(t,{timeout:2500}):setTimeout(t,120)}const hn=2e4;let ke=null;function kn(){typeof document<"u"&&document.hidden||(x({silent:!0}).catch(()=>{}),T())}const O=t=>String(t).padStart(2,"0"),be=te(()=>{const t=new Date;return`${t.getFullYear()}-${O(t.getMonth()+1)}-${O(t.getDate())}`}),qe=te(()=>{const t=new Date;return t.setDate(t.getDate()+1),`${t.getFullYear()}-${O(t.getMonth()+1)}-${O(t.getDate())}`}),Be=te(()=>{const t=new Date;return t.setDate(t.getDate()+2),`${t.getFullYear()}-${O(t.getMonth()+1)}-${O(t.getDate())}`}),Qe=te(()=>{const t=new Date;return t.setDate(t.getDate()-1),`${t.getFullYear()}-${O(t.getMonth()+1)}-${O(t.getDate())}`}),Ge=te(()=>{const t=new Date;return t.setDate(t.getDate()-2),`${t.getFullYear()}-${O(t.getMonth()+1)}-${O(t.getDate())}`}),ft=c([]),vt=c([]),me=c([]),yt=c([]),bn=async()=>{try{const[t,e,o,p]=await Promise.all([dt({type:"diagnosis_type"}),dt({type:"syndrome_type"}),dt({type:"channels"}),fs()]);ft.value=(t==null?void 0:t.diagnosis_type)||[],vt.value=(e==null?void 0:e.syndrome_type)||[],yt.value=((o==null?void 0:o.channels)||[]).filter(r=>r.status!==0).sort((r,y)=>{const V=Number((y==null?void 0:y.sort)??0)-Number((r==null?void 0:r.sort)??0);return V!==0?V:Number((y==null?void 0:y.id)??0)-Number((r==null?void 0:r.id)??0)}).map(r=>({name:String((r==null?void 0:r.name)??(r==null?void 0:r.value)??""),value:(r==null?void 0:r.value)!=null&&r.value!==""?String(r.value):""})),me.value=p||[]}catch(t){console.error("获取字典数据失败:",t)}},ie=()=>{a.latest_appointment_start_date="",a.latest_appointment_end_date="",a.latest_appointment_channel_source=""},ht=()=>!!(a.latest_appointment_start_date||a.latest_appointment_end_date||a.latest_appointment_channel_source),kt=()=>{ht()&&(a.appointment_date="",a.pending_booking="",a.completed_appointment="",a.has_appointment==="0"&&(a.has_appointment="")),L()},Cn=()=>{L()},xn=({prop:t,order:e})=>{const o=e==="ascending"?"asc":e==="descending"?"desc":"";a.sort_unserved_days=t==="unserved_days"?o:"",a.sort_revisit_due=t==="revisit_due_date"?o:"",D.page=1,x()},bt=t=>{const e=String((t==null?void 0:t.latest_appointment_channel_source_desc)||"").trim(),o=String((t==null?void 0:t.latest_appointment_channel_source)||"").trim(),p=String((t==null?void 0:t.latest_appointment_channel_source_detail)||"").trim(),r=e||o;return r?p?`${r}(${p})`:r:""},Vn=t=>{if(!t&&t!==0)return"-";const e=typeof t=="string"?parseInt(t):t;if(me.value.length===0)return"...";const o=me.value.find(p=>(typeof p.id=="string"?parseInt(p.id):p.id)===e);return o?o.name:"-"},{pager:D,getLists:x}=As({fetchFun:ln,params:a}),Dn=()=>x({silent:!0}),An=()=>{_t.value="all",a.keyword="",a.diagnosis_type="",a.syndrome_type="",a.assistant_id="",a.latest_appointment_start_date="",a.latest_appointment_end_date="",a.latest_appointment_channel_source="",a.latest_assign_start_date="",a.latest_assign_end_date="",a.sort_unserved_days="",a.revisit_state="",a.revisit_days_bucket="",a.sort_revisit_due="",a.diagnosis_confirmed="",a.appointment_date="",a.has_appointment="",a.pending_assign="",a.pending_assign_order_month="",a.pending_assign_keyword="",a.pending_booking="",a.completed_appointment="",D.page=1,x(),T()},Ct=t=>{const e=t.DiagnosisViewRecord||[];return e.length>0&&e.some(o=>o.is_confirmed==1)},En=t=>{if(t==null)return"unserved-muted";const e=Number(t);return Number.isFinite(e)?e>=7?"unserved-red":e>=3?"unserved-orange":"unserved-green":"unserved-muted"},Rn=({row:t})=>{const e=Ns(gt(t));return e||(Ct(t)?t.has_appointment?"":"row-no-appointment":"row-unconfirmed")},le=c(),Sn=c(),xt=c(),Ce=c(),xe=c(null),ce=c(null),Ve=Es();rt([le,xe],()=>{const t=xe.value,e=le.value;t==null||!(e!=null&&e.open)||(e.open("edit",t),xe.value=null)},{flush:"post"}),rt([Ce,ce],()=>{const t=ce.value,e=Ce.value;!t||!(e!=null&&e.open)||(ce.value=null,Rt(t))},{flush:"post"});const Tn=async t=>{if(!W(["tcm.diagnosis/guahao"])){f.msgWarning("无挂号权限");return}const e=D.lists.find(o=>Number(o==null?void 0:o.id)===t);if(e){ce.value=e;return}try{const o=await vs({id:t}),p=o==null?void 0:o.diagnosis;if(!p||!p.patient_id){f.msgWarning("未找到该诊单或患者信息不完整,无法打开挂号");return}ce.value={...p,id:t,patient_id:p.patient_id,patient_name:p.patient_name||"",gender_desc:Bs(p.gender),age:p.age??0}}catch(o){f.msgWarning((o==null?void 0:o.msg)||(o==null?void 0:o.message)||"加载诊单失败,无法打开挂号")}},De=c(!1),Vt=c(0),Nn=t=>{var o;const e=t.assistant_id??t.assistant;return e==null||e===""?!1:Number(e)===Number((o=Ve.userInfo)==null?void 0:o.id)},In=t=>{Vt.value=Number(t.id)||0,De.value=!0},Dt=t=>Se(t)&&Nn(t)&&W(["tcm.diagnosis/watchCall"]),Ae=t=>{var e;return Se(t)&&((e=t.video_call_hint)==null?void 0:e.state)||"none"},$n=t=>{const e=t.video_call_hint,o="点击进入实时房间(仅观看,不推流、不上麦)";return e!=null&&e.start_time?`${o}。开始时间:${jt(e.start_time)}`:o},Ln=t=>{const e=Ae(t);return e==="live"||e==="pending_room"},Pn=t=>Ae(t)==="pending_room"?"医生尚未接通或未同步房间号,接通后再点此进入":$n(t),zn=t=>{if(!Dt(t)){f.msgWarning("仅已预约的视频问诊可进入视频旁观");return}if(Ae(t)!=="live"){f.msgWarning("医生尚未接通或未同步房间号,请稍后再试");return}In(t)},Fn=t=>{const e=t.video_call_hint;return e!=null&&e.label?e.label:"暂无可旁观通话"},Wn=t=>{const e=Ae(t);if(e==="none")return"—";if(e==="live")return"通话中";if(e==="pending_room")return"接通中";const o=t.video_call_hint;return(o==null?void 0:o.label)||"—"},oe=c(!1),Ee=c(),He=c(!1),k=ut({patient_id:"",patient_name:"",phone:"",order_type:"",amount:0,remark:"",has_appointment:!1,appointment_time_text:""}),Yn={order_type:[{required:!0,message:"请选择订单类型",trigger:"change"}],amount:[{required:!0,message:"请输入订单金额",trigger:"blur"}]},wn=t=>{var e;k.patient_id=t.patient_id||t.id,k.patient_name=t.patient_name,k.phone=t.phone||"",k.order_type="",k.amount=0,k.remark="",k.has_appointment=!!t.has_appointment,k.appointment_time_text=t.appointment_time_text||"",(e=Ee.value)==null||e.clearValidate(),oe.value=!0},On=()=>{var t;k.patient_id="",k.patient_name="",k.phone="",k.order_type="",k.amount=0,k.remark="",k.has_appointment=!1,k.appointment_time_text="",(t=Ee.value)==null||t.clearValidate()},Mn=async()=>{var t;try{await((t=Ee.value)==null?void 0:t.validate()),He.value=!0;const e=await Ds({patient_id:k.patient_id,order_type:k.order_type,amount:k.amount,remark:k.remark});oe.value=!1,x();const o=e==null?void 0:e.order_no;if(o){B.value=!0,K.value=!0,j.value="",X.value={patient_name:k.patient_name,has_appointment:k.has_appointment,appointment_time_text:k.appointment_time_text};try{const p=await ys({order_no:o});p!=null&&p.qrcode_url?j.value=p.qrcode_url:f.msgError("二维码生成失败")}catch(p){f.msgError((p==null?void 0:p.msg)||"生成二维码失败")}finally{K.value=!1}}}catch(e){console.error("创建订单失败:",e)}finally{He.value=!1}},B=c(!1),K=c(!1),j=c(""),X=c(null),Un=te(()=>{const t=X.value;return t?t.has_appointment?t.appointment_time_text||"—":"未挂号":"—"}),Ke=c("小程序二维码"),je=c("confirm"),I=c([]),de=c([]),ne=c(!1),Xe=c(!1),ge=c("batch"),fe=c(null),E=c({assistant_id:null,is_inherit:!1});function qn(){de.value=[],E.value.assistant_id=null,E.value.is_inherit=!1}const Bn=t=>{I.value=t.map(e=>e.id)},Re=t=>Number((t==null?void 0:t.assistant_id)??(t==null?void 0:t.assistant)??0)>0,Qn=te(()=>{if(!I.value.length)return!1;const t=new Set(I.value);return D.lists.some(e=>t.has(e.id)&&Re(e))}),Gn=t=>{ge.value="single",fe.value=t,de.value=[],E.value.assistant_id=Number(t.assistant_id)>0?Number(t.assistant_id):null,E.value.is_inherit=!1,ne.value=!0},Hn=()=>{if(I.value.length===0){f.msgWarning("请先选择要指派的诊单");return}ge.value="batch",fe.value=null,E.value.assistant_id=null,E.value.is_inherit=!1,de.value=[...I.value],ne.value=!0},Kn=async()=>{if(!E.value.assistant_id){f.msgWarning("请选择医助");return}Xe.value=!0;try{if(ge.value==="single")await Fe({id:fe.value.id,assistant_id:E.value.assistant_id,is_inherit:E.value.is_inherit?1:0});else{const t=de.value;if(!t.length){f.msgWarning("没有可指派的诊单,请关闭后重新勾选");return}for(const e of t)await Fe({id:e,assistant_id:E.value.assistant_id,is_inherit:E.value.is_inherit?1:0});I.value=[],de.value=[]}ne.value=!1,x()}catch(t){console.error("指派失败:",t)}finally{Xe.value=!1}},jn=async t=>{if(!(t!=null&&t.id)||!Re(t)){f.msgWarning("该诊单未指派医助");return}await f.confirm("确定取消该诊单的医助指派吗?"),await Fe({id:t.id,assistant_id:0}),x()},Xn=async()=>{if(!I.value.length){f.msgWarning("请先选择诊单");return}const t=new Set(I.value),e=D.lists.filter(o=>t.has(o.id)&&Re(o));if(!e.length){f.msgWarning("所选诊单中没有已指派医助的记录");return}await f.confirm(`确定取消 ${e.length} 条诊单的医助指派吗?`),await Promise.all(e.map(o=>Fe({id:o.id,assistant_id:0}))),I.value=[],x()},Jn=()=>{le.value.open("add")},Zn=t=>{le.value.open("edit",t)};function ea(t){return a.pending_assign==="1"?"开方":Number(t==null?void 0:t.prescription_audit_status)===1&&Number(t==null?void 0:t.prescription_void_status)!==1?"查看":"开方"}const ta=t=>{var e;if(!(t!=null&&t.id)){f.msgWarning("诊单信息不完整");return}(e=xt.value)==null||e.open({...t,diagnosis_id:t.id,id:t.appointment_id||0})},na=()=>{var t,e;x(),(e=(t=le.value)==null?void 0:t.refreshCaseList)==null||e.call(t)},aa=async t=>{await f.confirm("确定要删除该诊单吗?"),await xs({id:t}),x()},sa=(t,e)=>{switch(t){case"assign":Gn(e);break;case"cancelAssign":jn(e);break;case"videoQr":if(!Se(e)){f.msgWarning("仅已预约的视频问诊可生成视频二维码");return}Tt(e);break;case"confirmQr":Nt(e);break;case"cancelApt":pa(e);break;case"guahaoLogs":ga(e);break;case"order":wn(e);break;case"delete":aa(e.id);break}},ia=t=>{const e=Number(t.appointment_status);return e===3?"已完成":e===4?"已过号":"已挂号"},la=t=>{const e=Number(t);return e===3?"已完成":e===4?"已过号":"已挂号"},J=t=>{const e=Array.isArray(t.appointments)?t.appointments:[];return e.length>0?e:t.has_appointment?[{id:t.appointment_id,status:t.appointment_status,doctor_id:t.appointment_doctor_id,doctor_name:t.appointment_doctor_name,time_text:t.appointment_time_text,appointment_type:t.appointment_type}]:[]},oa=t=>{const e=Number(t==null?void 0:t.status);return{"apt-item-done":e===3,"apt-item-missed":e===4,"apt-item-active":e===1}},da=t=>{const e=Number(t.appointment_status);return{"has-apt":t.has_appointment,"apt-row-done":t.has_appointment&&e===3,"apt-row-missed":t.has_appointment&&e===4}},Je=(t,e=!1)=>J(t).find(o=>Number(o==null?void 0:o.status)===1&&(!e||Ls(o.appointment_type)))??null,At=(t,e=!1)=>{const o=Je(t,e);return o?{...t,has_appointment:1,appointment_id:o.id,appointment_status:o.status,appointment_doctor_id:o.doctor_id,appointment_doctor_name:o.doctor_name,appointment_time_text:o.time_text,appointment_type:o.appointment_type}:null},ra=t=>!!Je(t),Se=t=>!!Je(t,!0),Et=t=>{const e=Number(t.appointment_status);return!!(t.has_appointment&&t.appointment_id&&(e===1||e===4))},Ze=t=>{const e=Number(t==null?void 0:t.status);return!!(t!=null&&t.id&&(e===1||e===4))},ua=t=>Et(t)?J(t).length<=1:!1,pa=async t=>{var r;if(!Et(t)){const y=Number(t.appointment_status);t.has_appointment&&y===3?f.msgWarning("已完成就诊,无法取消挂号"):f.msgWarning("该诊单未挂号或挂号信息异常");return}const e=J(t),o=e.length===1?e[0]:null,p=o!=null&&o.id&&Ze(o)?o.id:t.appointment_id;try{await f.confirm(`确定要取消患者「${t.patient_name}」的挂号吗?`),await Yt({id:p}),f.msgSuccess("取消挂号成功"),x(),T(),ae.value&&((r=Q.value)==null?void 0:r.id)===t.id&&await Ne(t.id)}catch(y){y!=="cancel"&&f.msgError((y==null?void 0:y.msg)||"取消挂号失败")}},_a=async(t,e)=>{var r;if(!Ze(e)){Number(e==null?void 0:e.status)===3?f.msgWarning("已完成就诊,无法取消挂号"):f.msgWarning("该挂号无法取消");return}const o=e.doctor_name||"—",p=e.time_text||"—";try{await f.confirm(`确定取消「${o}」${p} 的挂号吗?(患者:${t.patient_name||"—"})`),await Yt({id:e.id}),f.msgSuccess("取消挂号成功"),x(),T(),ae.value&&((r=Q.value)==null?void 0:r.id)===t.id&&await Ne(t.id)}catch(y){y!=="cancel"&&f.msgError((y==null?void 0:y.msg)||"取消挂号失败")}},ae=c(!1),Te=c(!1),re=c([]),Q=c(null);function ma(){re.value=[],Q.value=null}function ca(t){const e=String((t==null?void 0:t.admin_name)||"").trim(),o=Number(t==null?void 0:t.admin_id);return e||(o>0?`管理员 #${o}`:"—")}async function Ne(t){Te.value=!0;try{const e=await hs({id:t});re.value=Array.isArray(e==null?void 0:e.data)?e.data:Array.isArray(e)?e:[]}catch{re.value=[]}finally{Te.value=!1}}async function ga(t){if(!(t!=null&&t.id)){f.msgWarning("诊单信息不完整");return}Q.value=t,ae.value=!0,await Ne(Number(t.id))}async function fa(){var t;await x({silent:!0}),T(),ae.value&&((t=Q.value)!=null&&t.id)&&await Ne(Number(Q.value.id))}const Rt=t=>{var e;if(!t.patient_id){f.msgWarning("患者信息不完整");return}(e=Ce.value)==null||e.open(t)},ue=c(!1),et=c(!1),St=c(),M=ut({id:0,patient_name:"",id_card:""}),va={id_card:[{required:!0,validator:(t,e,o)=>{if(!e){o(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(e),r=/^[1-9]\d{5}\d{2}(0[1-9]|1[0-2])(0[1-9]|[12]\d|3[01])\d{3}$/.test(e);p||r?o():o(new Error("请输入15或18位有效身份证号"))},trigger:"blur"}]},ya=t=>{M.id=t.id,M.patient_name=t.patient_name||"-",M.id_card=t.id_card||"",ue.value=!0},ha=async()=>{var t;await((t=St.value)==null?void 0:t.validate()),et.value=!0;try{await ks({id:M.id,id_card:M.id_card}),f.msgSuccess("补全成功,年龄已自动更新"),ue.value=!1,x()}catch(e){f.msgError((e==null?void 0:e.msg)||"补全失败")}finally{et.value=!1}},Tt=async t=>{var o;const e=At(t,!0);if(!e){f.msgWarning("仅已预约的视频问诊可生成视频二维码");return}if(!e.patient_id){f.msgWarning("患者信息不完整");return}je.value="video",X.value=e,B.value=!0,K.value=!0,j.value="",Ke.value="视频二维码";try{const p=await wt();if(!(p!=null&&p.app_id)){f.msgError("小程序未配置,请先配置小程序信息"),B.value=!1;return}const r=await Ft({doctor_id:e.appointment_doctor_id,diagnosis_id:e.appointment_doctor_id,patient_id:e.patient_id,share_user_id:((o=Ve.userInfo)==null?void 0:o.id)||"",mini_program_path:"pages/login/login"});r!=null&&r.qrcode_url?j.value=r.qrcode_url:f.msgError("二维码生成失败")}catch(p){f.msgError((p==null?void 0:p.msg)||"生成二维码失败,请重试")}finally{K.value=!1}},Nt=async t=>{const e=At(t);if(!e){f.msgWarning("仅「已预约」状态可使用诊单二维码");return}if(!e.patient_id){f.msgWarning("患者信息不完整");return}je.value="confirm",X.value=e,B.value=!0,K.value=!0,j.value="",Ke.value="诊单二维码";try{const o=await wt();if(!(o!=null&&o.app_id)){f.msgError("小程序未配置,请先配置小程序信息"),B.value=!1;return}const p=Ve.userInfo,r=await Ft({diagnosis_id:e.id,doctor_id:e.appointment_doctor_id,patient_id:e.patient_id,share_user_id:(p==null?void 0:p.id)||""});r!=null&&r.qrcode_url?j.value=r.qrcode_url:f.msgError("二维码生成失败")}catch(o){console.error("生成小程序二维码失败:",o),f.msgError((o==null?void 0:o.msg)||"生成二维码失败,请重试")}finally{K.value=!1}},ka=()=>{X.value&&(je.value==="video"?Tt(X.value):Nt(X.value))},Ie=c(!1),P=c(null),Z=c([]),$e=c(0),tt=c(!1),z=c(null),se=c(""),nt=c(!1),at=c(1),ba=t=>{if(!t)return"-";const e=String(t).length===10?t*1e3:t;return We(e).format("YYYY-MM-DD HH:mm")},Ca=async t=>{P.value=t,Ie.value=!0,Z.value=[],$e.value=0,z.value=null,se.value="",at.value=1,tt.value=!0;try{const[e,o]=await Promise.all([Wt({diagnosis_id:t.id,patient_id:t.patient_id,page_no:1,page_size:20}),Vs({patient_id:t.patient_id||t.id}).catch(()=>null)]);Z.value=(e==null?void 0:e.lists)||[],$e.value=(e==null?void 0:e.count)||0,z.value=o}catch(e){console.error("加载企业微信记录失败:",e)}finally{tt.value=!1}},xa=async()=>{if(P.value){at.value++;try{const t=await Wt({diagnosis_id:P.value.id,patient_id:P.value.patient_id,page_no:at.value,page_size:20});Z.value.push(...(t==null?void 0:t.lists)||[])}catch(t){console.error("加载更多记录失败:",t)}}},Va=async()=>{var t;if(!se.value.trim()){f.msgWarning("请输入内容");return}nt.value=!0;try{await bs({diagnosis_id:P.value.id,patient_id:P.value.patient_id,content:se.value.trim(),msg_type:"note",staff_name:((t=Ve.userInfo)==null?void 0:t.name)||"",external_name:P.value.patient_name||""}),se.value="",Ca(P.value)}catch(e){f.msgError((e==null?void 0:e.msg)||"添加失败")}finally{nt.value=!1}},Da=async t=>{await f.confirm("确定删除该记录吗?");try{await Cs({id:t}),Z.value=Z.value.filter(e=>e.id!==t),$e.value--}catch(e){f.msgError((e==null?void 0:e.msg)||"删除失败")}},st=Ms(),Aa=Us(),It=t=>{if(!W(["tcm.diagnosis/readonlyDetail"]))return;const e=Number(t==null?void 0:t.id);!e||e<=0||Aa.push({path:"/tcm/diagnosis-readonly",query:{id:String(e)}})};Qs(()=>{bn(),String(st.query.revisit_state??"")==="due"?ct():(a.appointment_date=be.value,x(),yn()),ke=setInterval(kn,hn);const t=st.query.id;if(t!=null&&t!==""){const e=Number(t);!Number.isNaN(e)&&e>0&&(String(st.query.action??"")==="appointment"?Ea().then(()=>Tn(e)):xe.value=e)}});const Ea=()=>new Promise(t=>{if(!D.loading){t();return}let e=!1;const o=()=>{e||(e=!0,p(),t())},p=rt(()=>D.loading,r=>{r||o()});setTimeout(o,8e3)});return Gs(()=>{ke!=null&&(clearInterval(ke),ke=null)}),(t,e)=>{var Pt;const o=wa,p=Oa,r=Ma,y=Ua,V=Ba,$=qa,pe=Qa,R=Ha,G=Ka,$t=ja,ee=Za,Ra=Ja,Sa=Xa,Ta=Ga,Na=cs,Ia=ts,$a=as,La=ns,Lt=ss,Le=is,U=os,Pa=ds,it=ls,za=rs,Pe=ps,Fa=us,Wa=_s,Ya=ms,q=Hs("perms"),lt=es;return d(),_("div",Ks,[l(pe,{class:"filter-card !border-none",shadow:"never"},{default:i(()=>[u("div",js,[u("div",Xs,[(d(!0),_(A,null,S(dn.value,n=>(d(),_("span",{key:n.value,class:Y(["chip",{active:s(a).pending_assign!=="1"&&s(a).pending_booking!=="1"&&s(a).completed_appointment!=="1"&&s(a).revisit_state===""&&!ht()&&s(a).appointment_date===n.value}]),onClick:h=>rn(n.value)},[g(m(n.label)+" ",1),s(Ye)[n.value]!==void 0?(d(),_("em",Zs,m(s(Ye)[n.value]),1)):b("",!0)],10,Js))),128)),u("span",{class:Y(["chip","chip-pending-booking",{active:s(a).pending_booking==="1"}]),onClick:un},[e[36]||(e[36]=g(" 待预约 ",-1)),s(we)!==void 0?(d(),_("em",ei,m(s(we)),1)):b("",!0)],2),u("span",{class:Y(["chip","chip-revisit-due",{active:s(a).revisit_state==="due"}]),onClick:ct},[e[37]||(e[37]=g(" 复诊到期 ",-1)),s(Ue)!==void 0?(d(),_("em",ti,m(s(Ue)),1)):b("",!0)],2),u("span",{class:Y(["chip","chip-completed-visit",{active:s(a).completed_appointment==="1"}]),onClick:pn},[e[38]||(e[38]=g(" 已完成 ",-1)),s(Oe)!==void 0?(d(),_("em",ni,m(s(Oe)),1)):b("",!0)],2),N((d(),_("span",ai,[u("span",{class:Y(["chip","chip-pending",{active:s(a).pending_assign==="1"}]),onClick:_n},[e[39]||(e[39]=g(" 待分配医助 ",-1)),s(Me)!==void 0?(d(),_("em",si,m(s(Me)),1)):b("",!0)],2),s(a).pending_assign==="1"?(d(),v(o,{key:0,modelValue:s(a).pending_assign_order_month,"onUpdate:modelValue":e[0]||(e[0]=n=>s(a).pending_assign_order_month=n),type:"month",placeholder:"订单月份","value-format":"YYYY-MM",clearable:"",class:"pending-assign-month",onChange:mn},null,8,["modelValue"])):b("",!0),s(a).pending_assign==="1"?(d(),v(p,{key:1,modelValue:s(a).pending_assign_keyword,"onUpdate:modelValue":e[1]||(e[1]=n=>s(a).pending_assign_keyword=n),placeholder:"搜身份证/诊单ID/患者号/备注…",clearable:"",class:"pending-assign-search",onKeyup:zt(L,["enter"]),onClear:L},null,8,["modelValue"])):b("",!0)])),[[q,["tcm.diagnosis/assign"]]])]),u("div",ii,[l(p,{modelValue:s(a).keyword,"onUpdate:modelValue":e[2]||(e[2]=n=>s(a).keyword=n),placeholder:"患者姓名 / 手机号",clearable:"",class:"search-input",onKeyup:zt(L,["enter"])},null,8,["modelValue"]),l(r,{type:"primary",onClick:L},{default:i(()=>[...e[40]||(e[40]=[g("查询",-1)])]),_:1})])]),u("div",li,[e[41]||(e[41]=u("span",{class:"chip-label"},"挂号:",-1)),(d(),_(A,null,S(Xt,n=>u("span",{key:n.value,class:Y(["chip","chip-sm",{active:s(a).has_appointment===n.value}]),onClick:h=>Zt(n.value)},m(n.label),11,oi)),64)),e[42]||(e[42]=u("span",{class:"chip-divider"},null,-1)),e[43]||(e[43]=u("span",{class:"chip-label"},"确认:",-1)),(d(),_(A,null,S(Jt,n=>u("span",{key:n.value,class:Y(["chip","chip-sm",{active:s(a).diagnosis_confirmed===n.value}]),onClick:h=>en(n.value)},m(n.label),11,di)),64)),l(r,{link:"",type:"primary",size:"small",class:"more-btn",onClick:e[3]||(e[3]=n=>_e.value=!s(_e))},{default:i(()=>[g(m(s(_e)?"收起":"更多筛选")+" ",1),l(y,{class:Y({"rotate-180":s(_e)})},{default:i(()=>[l(s(Ot))]),_:1},8,["class"])]),_:1})]),N(u("div",ri,[l($,{modelValue:s(a).diagnosis_type,"onUpdate:modelValue":e[4]||(e[4]=n=>s(a).diagnosis_type=n),placeholder:"诊断类型",clearable:"",size:"small",onChange:L},{default:i(()=>[(d(!0),_(A,null,S(s(ft),n=>(d(),v(V,{key:n.value,label:n.name,value:n.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue"]),l($,{modelValue:s(a).syndrome_type,"onUpdate:modelValue":e[5]||(e[5]=n=>s(a).syndrome_type=n),placeholder:"证型",clearable:"",size:"small",onChange:L},{default:i(()=>[(d(!0),_(A,null,S(s(vt),n=>(d(),v(V,{key:n.value,label:n.name,value:n.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue"]),l($,{modelValue:s(a).assistant_id,"onUpdate:modelValue":e[6]||(e[6]=n=>s(a).assistant_id=n),placeholder:"医助",clearable:"",filterable:"",size:"small",onChange:L},{default:i(()=>[(d(!0),_(A,null,S(s(me),n=>(d(),v(V,{key:n.id,label:n.name,value:Number(n.id)},null,8,["label","value"]))),128))]),_:1},8,["modelValue"]),l(Ut,{class:"latest-appointment-range",startTime:s(a).latest_appointment_start_date,"onUpdate:startTime":e[7]||(e[7]=n=>s(a).latest_appointment_start_date=n),endTime:s(a).latest_appointment_end_date,"onUpdate:endTime":e[8]||(e[8]=n=>s(a).latest_appointment_end_date=n),"picker-type":"daterange","value-format":"YYYY-MM-DD","start-placeholder":"最近挂号开始","end-placeholder":"最近挂号结束",onChange:kt},null,8,["startTime","endTime"]),l(Ut,{class:"latest-assign-range",startTime:s(a).latest_assign_start_date,"onUpdate:startTime":e[9]||(e[9]=n=>s(a).latest_assign_start_date=n),endTime:s(a).latest_assign_end_date,"onUpdate:endTime":e[10]||(e[10]=n=>s(a).latest_assign_end_date=n),"picker-type":"daterange","value-format":"YYYY-MM-DD","start-placeholder":"最近指派开始","end-placeholder":"最近指派结束",onChange:Cn},null,8,["startTime","endTime"]),l($,{modelValue:s(a).latest_appointment_channel_source,"onUpdate:modelValue":e[11]||(e[11]=n=>s(a).latest_appointment_channel_source=n),placeholder:"最近挂号渠道",clearable:"",filterable:"",size:"small",class:"latest-appointment-channel",onChange:kt},{default:i(()=>[(d(!0),_(A,null,S(s(yt),n=>(d(),v(V,{key:String(n.value),label:n.name,value:String(n.value)},null,8,["label","value"]))),128))]),_:1},8,["modelValue"]),l($,{modelValue:s(a).revisit_state,"onUpdate:modelValue":e[12]||(e[12]=n=>s(a).revisit_state=n),placeholder:"复诊状态",clearable:"",size:"small",class:"revisit-state-select",onChange:fn},{default:i(()=>[(d(!0),_(A,null,S(s(cn),n=>(d(),v(V,{key:n.value,label:n.label,value:n.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue"]),l($,{modelValue:s(a).revisit_days_bucket,"onUpdate:modelValue":e[13]||(e[13]=n=>s(a).revisit_days_bucket=n),placeholder:"开药天数档",clearable:"",size:"small",class:"revisit-days-bucket-select",onChange:L},{default:i(()=>[(d(!0),_(A,null,S(s(gn),n=>(d(),v(V,{key:n.value,label:n.label,value:n.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue"]),l(r,{size:"small",onClick:An},{default:i(()=>[...e[44]||(e[44]=[g("重置",-1)])]),_:1})],512),[[gs,s(_e)]])]),_:1}),l(pe,{class:"!border-none mt-3 list-card",shadow:"never"},{default:i(()=>[u("div",ui,[u("div",pi,[N((d(),v(r,{type:"primary",onClick:Jn},{default:i(()=>[...e[45]||(e[45]=[g("新增诊单",-1)])]),_:1})),[[q,["tcm.diagnosis/add"]]]),N((d(),v(r,{type:"success",onClick:Hn,disabled:s(I).length===0},{default:i(()=>[...e[46]||(e[46]=[g(" 批量指派医助 ",-1)])]),_:1},8,["disabled"])),[[q,["tcm.diagnosis/assign"]]]),N((d(),v(r,{type:"warning",plain:"",onClick:Xn,disabled:!Qn.value},{default:i(()=>[...e[47]||(e[47]=[g(" 批量取消指派 ",-1)])]),_:1},8,["disabled"])),[[q,["tcm.diagnosis/assign"]]])]),s(I).length>0?(d(),_("div",_i,"已选 "+m(s(I).length)+" 条",1)):b("",!0)]),u("div",mi,[N((d(),v(Ta,{data:s(D).lists,"row-key":"id",size:"default",onSelectionChange:Bn,onRowDblclick:It,onSortChange:xn,"row-class-name":Rn,class:"diagnosis-table",stripe:""},{default:i(()=>[l(R,{type:"selection",width:"48",align:"center"}),l(R,{label:"ID","min-width":"70"},{default:i(({row:n})=>[u("div",ci,[u("div",gi,[u("div",fi,[g(m(n.id)+" ",1),n.assign_read_at===null&&n.assistant_id>0?(d(),v(G,{key:0,type:"danger",size:"small",effect:"dark",class:"ml-1"},{default:i(()=>[...e[48]||(e[48]=[g("NEW",-1)])]),_:1})):b("",!0)])])])]),_:1}),l(R,{label:"患者","min-width":"60"},{default:i(({row:n})=>[u("div",vi,[u("div",yi,[u("div",hi,m(n.patient_name),1)])])]),_:1}),l(R,{label:" 性别 / 年龄",width:"100",align:"left"},{default:i(({row:n})=>[u("div",null,m(n.gender_desc||"-")+" · "+m(n.age??"-")+"岁",1)]),_:1}),l(R,{label:"挂号","min-width":"175"},{default:i(({row:n})=>[u("div",{class:Y(["appointment-cell",da(n)])},[n.has_appointment?(d(),_(A,{key:0},[J(n).length?(d(!0),_(A,{key:0},S(J(n),h=>(d(),_("div",{key:h.id||`${h.doctor_id}-${h.time_text}`,class:Y(["apt-item",oa(h)])},[u("div",ki,m(la(h.status)),1),u("div",bi,m(h.doctor_name||"-"),1),u("div",Ci,m(h.time_text||"-"),1),Ze(h)?(d(),_("div",xi,[N((d(),v(r,{type:"danger",link:"",size:"small",onClick:ot(C=>_a(n,h),["stop"])},{default:i(()=>[...e[49]||(e[49]=[g(" 取消挂号 ",-1)])]),_:1},8,["onClick"])),[[q,["tcm.diagnosis/guahao"]]])])):b("",!0)],2))),128)):(d(),_(A,{key:1},[u("div",Vi,m(ia(n)),1),u("div",Di,m(n.appointment_doctor_name||"-"),1),u("div",Ai,m(n.appointment_time_text||"-"),1)],64)),bt(n)?(d(),_("div",Ei," 最近渠道:"+m(bt(n)),1)):b("",!0)],64)):(d(),_("span",Ri,"未挂号"))],2)]),_:1}),l(R,{label:"挂号类型","min-width":"120"},{default:i(({row:n})=>[J(n).length?(d(!0),_(A,{key:0},S(J(n),h=>(d(),_("div",{key:h.id||`${h.doctor_id}-${h.time_text}`,class:"mb-2"},[u("div",null,m(s($s)(h.appointment_type)),1),J(n).length>1?(d(),_("div",Si,m(h.doctor_name||"—")+" · "+m(h.time_text||"—"),1)):b("",!0)]))),128)):(d(),_("span",Ti,"—"))]),_:1}),l(R,{label:"确认",width:"88",align:"center"},{default:i(({row:n})=>[Ct(n)?(d(),_("span",Ni,"已确认")):(d(),_("span",Ii,"未确认"))]),_:1}),l(R,{label:"复诊节点",prop:"revisit_due_date","min-width":"180",sortable:"custom"},{default:i(({row:n})=>[l(qs,{due:gt(n),"has-prescription":!!n.has_prescription,"followup-doctor-name":n.followup_doctor_name||"","prescribed-text":vn(n)},null,8,["due","has-prescription","followup-doctor-name","prescribed-text"])]),_:1}),l(R,{label:"助理",width:"100","show-overflow-tooltip":""},{default:i(({row:n})=>[u("span",$i,m(Vn(n.assistant_id||n.assistant)),1)]),_:1}),l(R,{label:"未服务天数",prop:"unserved_days",width:"110",align:"center",sortable:"custom","sort-orders":["descending","ascending"]},{default:i(({row:n})=>[n.last_blood_record_at?(d(),v($t,{key:0,content:`最近一次健康打卡:${n.last_blood_record_at}`,placement:"top"},{default:i(()=>[u("span",{class:Y(["unserved-days",En(n.unserved_days)])},m(n.unserved_days??"—"),3)]),_:2},1032,["content"])):(d(),_("span",Li,"—"))]),_:1}),l(R,{label:"视频旁观",width:"120",fixed:"right",align:"center"},{default:i(({row:n})=>[u("div",Pi,[Dt(n)?(d(),_(A,{key:0},[Ln(n)?(d(),v($t,{key:0,content:Pn(n),placement:"top"},{default:i(()=>[u("span",zi,[l(r,{type:"primary",link:"",size:"small",onClick:h=>zn(n)},{default:i(()=>[...e[50]||(e[50]=[g(" 进入旁观 ",-1)])]),_:1},8,["onClick"])])]),_:2},1032,["content"])):(d(),_("span",Fi,m(Fn(n)),1))],64)):(d(),_("span",Wi,m(Wn(n)),1))])]),_:1}),l(R,{label:"操作",width:"340",fixed:"right",align:"left"},{default:i(({row:n})=>[u("div",{class:"action-cell",onClick:e[14]||(e[14]=ot(()=>{},["stop"])),onDblclick:e[15]||(e[15]=ot(()=>{},["stop"]))},[N((d(),v(r,{type:"primary",link:"",size:"small",onClick:h=>It(n)},{default:i(()=>[...e[51]||(e[51]=[g(" 查看 ",-1)])]),_:1},8,["onClick"])),[[q,["tcm.diagnosis/readonlyDetail"]]]),N((d(),v(r,{type:"primary",link:"",size:"small",onClick:h=>Zn(n.id)},{default:i(()=>[...e[52]||(e[52]=[g("诊单",-1)])]),_:1},8,["onClick"])),[[q,["tcm.diagnosis/edit"]]]),N((d(),v(r,{type:"primary",link:"",size:"small",onClick:h=>ta(n)},{default:i(()=>[g(m(ea(n)),1)]),_:2},1032,["onClick"])),[[q,["tcm.diagnosis/kaifang"]]]),N((d(),v(r,{type:"success",link:"",size:"small",onClick:h=>Rt(n)},{default:i(()=>[...e[53]||(e[53]=[g("预约",-1)])]),_:1},8,["onClick"])),[[q,["tcm.diagnosis/guahao"]]]),N((d(),v(r,{type:"warning",link:"",size:"small",onClick:h=>ya(n)},{default:i(()=>[...e[54]||(e[54]=[g("补全身份证",-1)])]),_:1},8,["onClick"])),[[q,["tcm.diagnosis/edit"]]]),l(Sa,{trigger:"click",onCommand:h=>sa(h,n),placement:"bottom-end"},{dropdown:i(()=>[l(Ra,null,{default:i(()=>[s(W)(["tcm.diagnosis/assign"])?(d(),v(ee,{key:0,command:"assign"},{default:i(()=>[l(y,null,{default:i(()=>[l(s(Ps))]),_:1}),e[56]||(e[56]=g("指派",-1))]),_:1})):b("",!0),s(W)(["tcm.diagnosis/assign"])&&Re(n)?(d(),v(ee,{key:1,command:"cancelAssign"},{default:i(()=>[l(y,null,{default:i(()=>[l(s(zs))]),_:1}),e[57]||(e[57]=g("取消指派 ",-1))]),_:1})):b("",!0),Se(n)&&s(W)(["tcm.diagnosis/videoQr"])?(d(),v(ee,{key:2,command:"videoQr"},{default:i(()=>[l(y,null,{default:i(()=>[l(s(Mt))]),_:1}),e[58]||(e[58]=g("视频二维码",-1))]),_:1})):b("",!0),s(W)(["tcm.diagnosis/guahao"])&&ra(n)?(d(),v(ee,{key:3,command:"confirmQr"},{default:i(()=>[l(y,null,{default:i(()=>[l(s(Mt))]),_:1}),e[59]||(e[59]=g("二维码",-1))]),_:1})):b("",!0),ua(n)&&s(W)(["tcm.diagnosis/guahao"])?(d(),v(ee,{key:4,command:"cancelApt"},{default:i(()=>[l(y,null,{default:i(()=>[l(s(Fs))]),_:1}),e[60]||(e[60]=g("取消挂号 ",-1))]),_:1})):b("",!0),s(W)(["tcm.diagnosis/guahaoLogList"])?(d(),v(ee,{key:5,command:"guahaoLogs"},{default:i(()=>[l(y,null,{default:i(()=>[l(s(Ws))]),_:1}),e[61]||(e[61]=g("挂号日志",-1))]),_:1})):b("",!0),s(W)(["tcm.diagnosis/order"])?(d(),v(ee,{key:6,command:"order"},{default:i(()=>[l(y,null,{default:i(()=>[l(s(Ys))]),_:1}),e[62]||(e[62]=g("创建订单",-1))]),_:1})):b("",!0),s(W)(["tcm.diagnosis/delete"])?(d(),v(ee,{key:7,command:"delete",divided:""},{default:i(()=>[l(y,null,{default:i(()=>[l(s(ws))]),_:1}),e[63]||(e[63]=u("span",{class:"text-danger"},"删除",-1))]),_:1})):b("",!0)]),_:2},1024)]),default:i(()=>[l(r,{type:"info",link:"",size:"small"},{default:i(()=>[e[55]||(e[55]=g("更多",-1)),l(y,{class:"el-icon--right"},{default:i(()=>[l(s(Ot))]),_:1})]),_:1})]),_:2},1032,["onCommand"])],32)]),_:1})]),_:1},8,["data"])),[[lt,s(D).loading]]),u("div",Yi,[l(Na,{modelValue:s(D),"onUpdate:modelValue":e[16]||(e[16]=n=>H(D)?D.value=n:null),onChange:s(x)},null,8,["modelValue","onChange"])])])]),_:1}),l(s(Bt),{ref_key:"editRef",ref:le,onSuccess:Dn},null,512),l(s(Qt),{ref_key:"detailRef",ref:Sn},null,512),l(s(Gt),{ref_key:"prescriptionRef",ref:xt,onSuccess:na},null,512),l(s(Ht),{ref_key:"appointmentRef",ref:Ce,onSuccess:fa},null,512),l(s(Kt),{modelValue:s(De),"onUpdate:modelValue":e[17]||(e[17]=n=>H(De)?De.value=n:null),"diagnosis-id":s(Vt),onClosed:s(x)},null,8,["modelValue","diagnosis-id","onClosed"]),l(Lt,{modelValue:s(ae),"onUpdate:modelValue":e[18]||(e[18]=n=>H(ae)?ae.value=n:null),title:"挂号操作日志",size:"460px","destroy-on-close":"",onClosed:ma},{default:i(()=>[N((d(),_("div",wi,[s(Q)?(d(),_("div",Oi,[u("span",Mi,m(s(Q).patient_name),1),e[64]||(e[64]=u("span",{class:"mx-2 text-gray-300"},"|",-1)),u("span",null,"诊单 #"+m(s(Q).id),1)])):b("",!0),!s(Te)&&s(re).length===0?(d(),v(Ia,{key:1,description:"暂无挂号/取消挂号操作记录"})):s(re).length>0?(d(),v(La,{key:2},{default:i(()=>[(d(!0),_(A,null,S(s(re),(n,h)=>(d(),v($a,{key:n.id??h,timestamp:n.create_time_text||"—",placement:"top"},{default:i(()=>[u("div",Ui,[l(G,{size:"small",type:"info"},{default:i(()=>[g(m(n.action_desc),1)]),_:2},1024),u("span",qi,m(ca(n)),1)]),u("div",Bi,m(n.summary),1)]),_:2},1032,["timestamp"]))),128))]),_:1})):b("",!0)])),[[lt,s(Te)]])]),_:1},8,["modelValue"]),l(Le,{modelValue:s(B),"onUpdate:modelValue":e[20]||(e[20]=n=>H(B)?B.value=n:null),title:s(Ke),width:"400px","close-on-click-modal":!1},{footer:i(()=>[l(r,{onClick:e[19]||(e[19]=n=>B.value=!1)},{default:i(()=>[...e[67]||(e[67]=[g("关闭",-1)])]),_:1}),s(K)?b("",!0):(d(),v(r,{key:0,type:"primary",onClick:ka},{default:i(()=>[...e[68]||(e[68]=[g(" 重新生成 ",-1)])]),_:1}))]),default:i(()=>{var n;return[u("div",Qi,[s(K)?(d(),_("div",Gi,[l(y,{class:"is-loading",size:40},{default:i(()=>[l(s(Os))]),_:1}),e[65]||(e[65]=u("div",{class:"mt-4 text-gray-500"},"生成中...",-1))])):s(j)?(d(),_("div",Hi,[u("img",{src:s(j),alt:"小程序二维码",class:"w-64 h-64 border border-gray-200 rounded"},null,8,Ki),u("div",ji,[u("div",null,"患者:"+m((n=s(X))==null?void 0:n.patient_name),1),u("div",Xi,"挂号时间:"+m(Un.value),1),e[66]||(e[66]=u("div",{class:"mt-2"},"请使用企业微信扫描二维码,然后转发给患者",-1))])])):(d(),_("div",Ji," 生成失败,请重试 "))])]}),_:1},8,["modelValue","title"]),l(Le,{modelValue:s(ne),"onUpdate:modelValue":e[24]||(e[24]=n=>H(ne)?ne.value=n:null),title:s(ge)==="batch"?"批量指派医助":"指派医助",width:"500px",onClosed:qn},{footer:i(()=>[l(r,{onClick:e[23]||(e[23]=n=>ne.value=!1)},{default:i(()=>[...e[70]||(e[70]=[g("取消",-1)])]),_:1}),l(r,{type:"primary",onClick:Kn,loading:s(Xe)},{default:i(()=>[...e[71]||(e[71]=[g(" 确定指派 ",-1)])]),_:1},8,["loading"])]),default:i(()=>[l(it,{model:s(E),"label-width":"100px"},{default:i(()=>[l(U,{label:"选择医助",required:""},{default:i(()=>[l($,{modelValue:s(E).assistant_id,"onUpdate:modelValue":e[21]||(e[21]=n=>s(E).assistant_id=n),placeholder:"请选择医助",class:"w-full",filterable:"",clearable:""},{default:i(()=>[(d(!0),_(A,null,S(s(me),n=>(d(),v(V,{key:n.id,label:n.name,value:Number(n.id)},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])]),_:1}),l(U,{label:"继承"},{default:i(()=>[l(Pa,{modelValue:s(E).is_inherit,"onUpdate:modelValue":e[22]||(e[22]=n=>s(E).is_inherit=n)},{default:i(()=>[...e[69]||(e[69]=[g("继承",-1)])]),_:1},8,["modelValue"])]),_:1}),s(ge)==="batch"?(d(),v(U,{key:0,label:"已选择"},{default:i(()=>[u("div",Zi,m(s(de).length)+" 条诊单记录",1)]),_:1})):(d(),v(U,{key:1,label:"诊单信息"},{default:i(()=>{var n,h;return[u("div",el,[u("div",null,"患者:"+m((n=s(fe))==null?void 0:n.patient_name),1),u("div",null,"诊断日期:"+m((h=s(fe))==null?void 0:h.diagnosis_date_text),1)])]}),_:1}))]),_:1},8,["model"])]),_:1},8,["modelValue","title"]),l(Le,{modelValue:s(oe),"onUpdate:modelValue":e[29]||(e[29]=n=>H(oe)?oe.value=n:null),title:"创建订单",width:"600px",onClose:On},{footer:i(()=>[l(r,{onClick:e[28]||(e[28]=n=>oe.value=!1)},{default:i(()=>[...e[72]||(e[72]=[g("取消",-1)])]),_:1}),l(r,{type:"primary",onClick:Mn,loading:s(He)},{default:i(()=>[...e[73]||(e[73]=[g("创建订单",-1)])]),_:1},8,["loading"])]),default:i(()=>[l(it,{ref_key:"orderFormRef",ref:Ee,model:s(k),rules:Yn,"label-width":"100px"},{default:i(()=>[l(U,{label:"患者"},{default:i(()=>[u("span",tl,m(s(k).patient_name)+" ("+m(pt(s(k).phone))+")",1)]),_:1}),l(U,{label:"订单类型",prop:"order_type"},{default:i(()=>[l($,{modelValue:s(k).order_type,"onUpdate:modelValue":e[25]||(e[25]=n=>s(k).order_type=n),placeholder:"请选择",class:"w-full"},{default:i(()=>[l(V,{label:"挂号费",value:1}),l(V,{label:"问诊费",value:2}),l(V,{label:"药品费用",value:3}),l(V,{label:"首付费用",value:4}),l(V,{label:"尾款费用",value:5}),l(V,{label:"其他费用",value:6}),l(V,{label:"全部费用",value:7}),l(V,{label:"驼奶费用",value:8})]),_:1},8,["modelValue"])]),_:1}),l(U,{label:"订单金额",prop:"amount"},{default:i(()=>[l(za,{modelValue:s(k).amount,"onUpdate:modelValue":e[26]||(e[26]=n=>s(k).amount=n),min:0,step:.01,precision:2,placeholder:"请输入金额",class:"w-full"},null,8,["modelValue"])]),_:1}),l(U,{label:"备注",prop:"remark"},{default:i(()=>[l(p,{modelValue:s(k).remark,"onUpdate:modelValue":e[27]||(e[27]=n=>s(k).remark=n),type:"textarea",rows:3,placeholder:"请输入备注(可选)"},null,8,["modelValue"])]),_:1})]),_:1},8,["model"])]),_:1},8,["modelValue"]),l(Le,{modelValue:s(ue),"onUpdate:modelValue":e[32]||(e[32]=n=>H(ue)?ue.value=n:null),title:"补全身份证号",width:"400px","close-on-click-modal":!1,onClose:e[33]||(e[33]=n=>s(M).id_card="")},{footer:i(()=>[l(r,{onClick:e[31]||(e[31]=n=>ue.value=!1)},{default:i(()=>[...e[74]||(e[74]=[g("取消",-1)])]),_:1}),l(r,{type:"primary",onClick:ha,loading:s(et)},{default:i(()=>[...e[75]||(e[75]=[g("提交(自动更新年龄)",-1)])]),_:1},8,["loading"])]),default:i(()=>[l(it,{ref_key:"fillIdCardFormRef",ref:St,model:s(M),rules:va,"label-width":"80px"},{default:i(()=>[l(U,{label:"患者"},{default:i(()=>[u("span",nl,m(s(M).patient_name),1)]),_:1}),l(U,{label:"身份证号",prop:"id_card"},{default:i(()=>[l(p,{modelValue:s(M).id_card,"onUpdate:modelValue":e[30]||(e[30]=n=>s(M).id_card=n),placeholder:"请输入15或18位身份证号",maxlength:"18","show-word-limit":"",clearable:""},null,8,["modelValue"])]),_:1})]),_:1},8,["model"])]),_:1},8,["modelValue"]),l(Lt,{modelValue:s(Ie),"onUpdate:modelValue":e[35]||(e[35]=n=>H(Ie)?Ie.value=n:null),title:`企业微信记录 - ${((Pt=s(P))==null?void 0:Pt.patient_name)||""}`,size:"600px","destroy-on-close":!0},{default:i(()=>{var n,h;return[s(z)?(d(),_("div",al,[l(Fa,{column:2,border:"",size:"small"},{default:i(()=>[l(Pe,{label:"患者姓名"},{default:i(()=>{var C;return[g(m((C=s(P))==null?void 0:C.patient_name),1)]}),_:1}),l(Pe,{label:"手机号"},{default:i(()=>[g(m(pt(s(z).phone)||"-"),1)]),_:1}),l(Pe,{label:"企微联系人ID"},{default:i(()=>[s(z).external_userid?(d(),_("span",sl,m(s(z).external_userid),1)):(d(),v(G,{key:1,type:"info",size:"small"},{default:i(()=>[...e[76]||(e[76]=[g("未关联",-1)])]),_:1}))]),_:1}),l(Pe,{label:"会话存档"},{default:i(()=>[s(z).msgaudit_enabled?(d(),v(G,{key:0,type:"success",size:"small"},{default:i(()=>[...e[77]||(e[77]=[g("已开通",-1)])]),_:1})):(d(),v(G,{key:1,type:"info",size:"small"},{default:i(()=>[...e[78]||(e[78]=[g("未配置",-1)])]),_:1}))]),_:1})]),_:1}),(n=s(z).permit_users)!=null&&n.length?(d(),_("div",il,[e[79]||(e[79]=u("span",{class:"text-sm text-gray-500 mr-2"},"存档成员:",-1)),(d(!0),_(A,null,S(s(z).permit_users,C=>(d(),v(G,{key:C,size:"small",class:"mr-1"},{default:i(()=>[g(m(C),1)]),_:2},1024))),128))])):b("",!0),(h=s(z).msgaudit_agree)!=null&&h.length?(d(),_("div",ll,[e[80]||(e[80]=u("span",{class:"text-sm text-gray-500 mr-2"},"存档同意:",-1)),(d(!0),_(A,null,S(s(z).msgaudit_agree,(C,ze)=>(d(),v(G,{key:ze,type:C.agree_status==="Agree"?"success":"warning",size:"small",class:"mr-1"},{default:i(()=>[g(m(C.userid)+": "+m(C.agree_status==="Agree"?"已同意":C.agree_status),1)]),_:2},1032,["type"]))),128))])):b("",!0)])):b("",!0),l(Wa),u("div",ol,[u("div",dl,[l(p,{modelValue:s(se),"onUpdate:modelValue":e[34]||(e[34]=C=>H(se)?se.value=C:null),type:"textarea",rows:2,placeholder:"添加沟通记录...",class:"flex-1"},null,8,["modelValue"]),l(r,{type:"primary",onClick:Va,loading:s(nt),class:"self-end"},{default:i(()=>[...e[81]||(e[81]=[g(" 添加 ",-1)])]),_:1},8,["loading"])])]),N((d(),_("div",null,[s(Z).length===0?(d(),_("div",rl," 暂无聊天记录 ")):(d(),_("div",ul,[(d(!0),_(A,null,S(s(Z),C=>{var ze;return d(),_("div",{key:C.id,class:"record-item"},[u("div",pl,[u("div",_l,[l(G,{type:C.direction===0?"primary":"success",size:"small"},{default:i(()=>[g(m(C.direction===0?"员工":"客户"),1)]),_:2},1032,["type"]),u("span",ml,m(C.direction===0?C.staff_name:C.external_name||((ze=s(P))==null?void 0:ze.patient_name)),1),C.msg_type==="note"?(d(),v(G,{key:0,type:"warning",size:"small"},{default:i(()=>[...e[82]||(e[82]=[g("备注",-1)])]),_:1})):b("",!0)]),u("div",cl,[u("span",gl,m(ba(C.chat_time)),1),l(r,{type:"danger",link:"",size:"small",onClick:xl=>Da(C.id)},{default:i(()=>[...e[83]||(e[83]=[g(" 删除 ",-1)])]),_:1},8,["onClick"])])]),u("div",fl,m(C.content),1),C.media_url?(d(),_("div",vl,[l(Ya,{src:C.media_url,style:{"max-width":"200px"},fit:"contain","preview-src-list":[C.media_url]},null,8,["src","preview-src-list"])])):b("",!0)])}),128))])),s($e)>s(Z).length?(d(),_("div",yl,[l(r,{link:"",type:"primary",onClick:xa},{default:i(()=>[...e[84]||(e[84]=[g("加载更多",-1)])]),_:1})])):b("",!0)])),[[lt,s(tt)]])]}),_:1},8,["modelValue","title"])])}}}),ho=Is(kl,[["__scopeId","data-v-2e2ba249"]]);export{ho as default};
|