3 lines
30 KiB
JavaScript
3 lines
30 KiB
JavaScript
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/edit-DJu_2QAV.js","assets/element-plus-Bolc0EfP.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-B0jSCQ-G.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-CL62-hT2.css","assets/tcm-B2eDN42y.js","assets/index-CzSP4TPL.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-B8eb0l7L.css","assets/perm-Ba4WXYK7.js","assets/DailyMatrix-BykpJjGm.js","assets/picker-BFSyGoz9.js","assets/index-DWEeyCDR.js","assets/index-B3imPWFk.css","assets/index-BL6dsbzE.js","assets/index.vue_vue_type_script_setup_true_lang-EJPdzUeK.js","assets/index-C5CUkFFb.js","assets/index-D0f1Mn00.css","assets/index-8GEGc2Yz.js","assets/cos-js-sdk-v5-DSMN0LUT.js","assets/file-DA0zt1Rz.js","assets/index.vue_vue_type_script_setup_true_lang-Lcfr_gGB.js","assets/usePaging-VsbTxSU0.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-DVfXtsgC.js","assets/DiagnosisTodoList-D0SBmTHG.css","assets/blood-thresholds-CJ1fqMjh.js","assets/DailyMatrix-AmWwwWJ0.css","assets/CaseRecordList-CdYwSXQk.js","assets/CaseRecordList-Cl-c3q7S.css","assets/CallRecordPanel-DbPxSfko.js","assets/RecordingPlaybackBlock-CUlY7YyE.js","assets/RecordingVideoPlayer-D1_T25z0.js","assets/RecordingVideoPlayer-4DegHAwm.css","assets/RecordingPlaybackBlock-B3KYFgvg.css","assets/CallRecordPanel-TsjZtTO8.css","assets/ImChatRecordPanel-CfA9lIP0.js","assets/im-business-message-parse-QKjFLn3X.js","assets/ImChatRecordPanel-aX8zpWRQ.css","assets/AssignLogPanel-BlIdJQ7L.js","assets/AssignLogPanel-DkQMoEkX.css","assets/AppointmentRecordPanel-CQZii2JX.js","assets/doctor-CwO7n1kw.js","assets/AppointmentRecordPanel-DC22GDgn.css","assets/NoteTimeline-2XD75WaJ.js","assets/patient-B-TtpnKl.js","assets/NoteTimeline-I2FSxX4s.css","assets/PatientOrderList-Dgam7DDA.js","assets/PrescriptionOrderDetailDrawer-BL7WuF4P.js","assets/prescription-order-utils-JfPHOgCe.js","assets/PrescriptionOrderDetailDrawer-CvPY-EBw.css","assets/PatientOrderList-D8-uh2iu.css","assets/index-CPYf9n-I.js","assets/index-Pb72-1vG.js","assets/medicine-Cpa7L0_Z.js","assets/index-tfEElgYq.css","assets/diabetes-discovery-display-B_wmGXQJ.js","assets/html2canvas-QH1iLAAe.js","assets/index-DVzcucvm.css","assets/edit-Ceb8O_U_.css","assets/TrackingNoteTimeline-B9T8pFso.css","assets/index-Cj_gN9of.js","assets/@tencentcloud/chat-uikit-vue3-CLQ__Wr9.js","assets/@tencentcloud/uikit-base-component-vue3-YgTqL4da.js","assets/@tencentcloud/uikit-base-component-vue3-BkrtIuVN.css","assets/tuikit-atomicx-vue3-Dln8Zi6e.js","assets/@tencentcloud/chat-uikit-engine-zx802ozq.js","assets/@tencentcloud/chat-AC2Y2r2A.js","assets/tim-upload-plugin-HO4N4AW9.js","assets/tim-profanity-filter-plugin-Dn_Cf-mP.js","assets/@tencentcloud/tui-core-8M7p1XHw.js","assets/@tencentcloud/tuiroom-engine-js-Br9swJyU.js","assets/rtc-detect-Chu-fZvE.js","assets/tcplayer.js-qpFBCYzN.js","assets/tuikit-atomicx-vue3-Qhi9ezz1.css","assets/@tencentcloud/chat-uikit-vue3-Cj2eB1Uk.css","assets/@tencentcloud/call-uikit-vue-DB7vt9Ht.js","assets/@tencentcloud/call-engine-js-BX2W9Lhf.js","assets/index-BqRj5hg7.css"])))=>i.map(i=>d[i]);
|
||
import{_ as lt}from"./jspdf-BsthCvR5.js";import{C as fe,i as ke,d as he,R as be,L as Ce,W as De,e as Ve,V as Ee}from"./element-plus-Bolc0EfP.js";import{w as Rt,q as $e}from"./@vue/runtime-dom-DDAG46FW.js";import{a as At,l as It,m as Le,n as Pe}from"./doctor-CwO7n1kw.js";import{g as Se}from"./weapp-8xQrwI2U.js";import{Q as Ne,a2 as Re,a1 as Ae,a3 as Ie}from"./tcm-B2eDN42y.js";import{u as Te,i as y,m as G,_ as Oe}from"./index-CzSP4TPL.js";import{a as Me}from"./patient-B-TtpnKl.js";import{u as qe}from"./usePaging-VsbTxSU0.js";import{i as Tt,f as ze}from"./diabetes-discovery-display-B_wmGXQJ.js";import{h}from"./perm-Ba4WXYK7.js";import{O as xe,e as Ot,a8 as Ue,P as Be,d as Qe,G as We,b as Fe,l as He}from"./@element-plus/icons-vue-B0jSCQ-G.js";import{f as Mt,b as Ye,d as Ge,ak as i,I as u,F as $,J as s,a as m,aN as v,O as f,ap as K,H as r,aP as at,G as C,P as nt,A as P}from"./@vue/runtime-core-C6bnekPw.js";import{r as Ke,y as d,n as c}from"./@vue/reactivity-DiY1c2vO.js";import{o as S,Q as o}from"./@vue/shared-mAAVTE9n.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./lodash-D3kF6u-c.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./vue-router-QlpZ4wdW.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 je={class:"apt-h5"},Je={class:"apt-h5-topbar"},Xe={class:"apt-h5-search"},Ze={class:"apt-h5-status apt-h5-scroll"},we=["onClick"],ts={key:0},es={class:"apt-h5-date apt-h5-scroll"},ss=["onClick"],ls={class:"apt-h5-quick"},as={class:"apt-h5-quick-group"},ns=["onClick"],os={class:"apt-h5-more-filter"},is={class:"apt-h5-list"},us={key:0,class:"apt-h5-empty"},rs=["onClick"],ps={class:"apt-h5-avatar"},ds={class:"apt-h5-title"},ms={class:"apt-h5-name"},vs={key:0,class:"apt-h5-meta"},cs={key:1,class:"apt-h5-meta"},_s={class:"apt-h5-sub"},gs={class:"apt-h5-tags"},ys={key:0,class:"apt-h5-tag apt-h5-tag--ok"},fs={key:1,class:"apt-h5-tag apt-h5-tag--warn"},ks=["onClick"],hs={class:"apt-h5-row"},bs={class:"apt-h5-row-val"},Cs={class:"apt-h5-row"},Ds={class:"apt-h5-row-val"},Vs={class:"apt-h5-row"},Es={class:"apt-h5-row-val"},$s={class:"apt-h5-row"},Ls={class:"apt-h5-row-val"},Ps={key:0,class:"apt-h5-inline-tag apt-h5-inline-tag--ok"},Ss={key:1,class:"apt-h5-inline-tag"},Ns={key:2,class:"apt-h5-inline-tag apt-h5-inline-tag--warn"},Rs={key:0,class:"apt-h5-row apt-h5-row--remark"},As={class:"apt-h5-row-val"},Is={class:"apt-h5-card-foot"},Ts={key:2,class:"apt-h5-no-more"},Os={key:0,class:"apt-h5-actions"},Ms={class:"apt-h5-detail-topbar"},qs={class:"apt-h5-detail-title"},zs={class:"apt-h5-detail-page"},xs={class:"apt-h5-detail-section"},Us={class:"apt-h5-detail-grid"},Bs={class:"apt-h5-detail-section"},Qs={class:"apt-h5-detail-grid"},Ws={class:"apt-h5-detail-full"},Fs={class:"apt-h5-detail-full"},Hs={key:0,class:"apt-h5-detail-section"},Ys={class:"apt-h5-detail-grid"},Gs={key:0},Ks={key:1},js={key:2,class:"apt-h5-detail-full"},Js={key:3,class:"apt-h5-detail-full"},Xs={key:1,class:"apt-h5-detail-section"},Zs={class:"apt-h5-detail-grid"},ws={key:0},tl={key:1},el={key:2,class:"apt-h5-detail-full"},sl={key:3,class:"apt-h5-detail-full"},ll={class:"apt-h5-detail-section"},al={key:0,class:"apt-h5-detail-footer-bar"},nl={class:"apt-h5-detail-footer"},ol={class:"apt-h5-qr"},il={key:0,class:"apt-h5-qr-loading"},ul={key:1},rl=["src"],pl={class:"apt-h5-qr-meta"},dl={key:2,class:"apt-h5-qr-fail"},ml={class:"apt-h5-complete"},vl=Mt({name:"tcmAppointmentH5"}),cl=Mt({...vl,setup(_l){const qt=nt(()=>lt(()=>import("./edit-DJu_2QAV.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]))),zt=nt(()=>lt(()=>import("./index-CPYf9n-I.js"),__vite__mapDeps([93,1,2,3,4,5,6,7,8,9,10,11,12,13,14,94,95,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,96,97,15,98,99]))),xt=nt(()=>lt(()=>import("./index-Cj_gN9of.js"),__vite__mapDeps([102,1,2,3,4,5,6,7,8,9,10,11,12,13,14,53,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,86,15,103,104,105,106,107,108,109,110,111,58,59,60,112,113,114,115,116,78,117,118,119]))),ot=Te(),Ut=P(()=>ot.userInfo),it=()=>ut(new Date),ut=e=>{const t=a=>String(a).padStart(2,"0");return`${e.getFullYear()}-${t(e.getMonth()+1)}-${t(e.getDate())}`},Bt=e=>{const t=new Date;return t.setDate(t.getDate()+e),ut(t)},Qt=e=>!e||e.length<11?e:e.replace(/(\d{3})\d{4}(\d{4})/,"$1****$2"),Wt=P(()=>{var t;const e=(t=Ut.value)==null?void 0:t.role_id;return Array.isArray(e)?!e.includes(1)&&!e.includes(2):e!==1&&e!==2}),_=Ke({patient_name:"",doctor_name:"",status:1,start_date:it(),end_date:it(),date_preset:"today",diagnosis_confirmed:"",include_status_counts:0}),j=c("1"),N=c("list"),R=c(!1),L=c(""),A=c({1:0,2:0,3:0,4:0}),{pager:g,getLists:Ft}=qe({fetchFun:At,params:_,firstLoading:!0}),Ht=P(()=>[{label:"待接诊",value:"1",count:A.value[1]},{label:"全部",value:"all",count:0},{label:"已过号",value:"4",count:A.value[4]},{label:"已取消",value:"2",count:A.value[2]},{label:"已完成",value:"3",count:A.value[3]}]),Yt=[{label:"昨天",value:"yesterday"},{label:"前天",value:"day_before"},{label:"今天",value:"today"},{label:"明天",value:"tomorrow"},{label:"后天",value:"day_after"},{label:"不限",value:""}],Gt=[{label:"全部",value:""},{label:"已确认",value:"1"},{label:"未确认",value:"0"}],J=P(()=>g.lists.length<(g.count||0)),k=async e=>{var t;_.include_status_counts=1;try{await Ft(e);const a=(t=g.extend)==null?void 0:t.status_count;a&&[1,2,3,4].forEach(p=>{const b=a[p]??a[String(p)];A.value[p]=typeof b=="number"?b:0})}finally{_.include_status_counts=0}},I=()=>{g.page=1,k()},Kt=e=>{j.value=e,_.status=e==="all"?"":Number(e),g.page=1,k()},X=e=>{if(_.date_preset=e,L.value="",!e)_.start_date="",_.end_date="";else{const a=Bt({yesterday:-1,day_before:-2,today:0,tomorrow:1,day_after:2}[e]??0);_.start_date=a,_.end_date=a}g.page=1,k()},jt=e=>{_.diagnosis_confirmed=e,g.page=1,k()},Jt=()=>{if(!L.value){X("");return}_.date_preset="",_.start_date=L.value[0],_.end_date=L.value[1],g.page=1,k()},Xt=()=>{_.patient_name="",_.doctor_name="",_.diagnosis_confirmed="",j.value="1",_.status=1,X("today")},Zt=async()=>{if(g.loading||!J.value)return;const e=(g.page||1)+1;g.loading=!0;try{const t=await At({page_no:e,page_size:g.size,..._,include_status_counts:0});g.page=e,g.lists.push(...(t==null?void 0:t.lists)||[]),g.count=(t==null?void 0:t.count)??g.count}finally{g.loading=!1}},rt=e=>{const t=Number(e);return t===1?"待接诊":t===2?"已取消":t===3?"已完成":t===4?"已过号":"-"},wt=e=>{const t=Number(e);return{"apt-h5-tag--ok":t===1||t===3,"apt-h5-tag--gray":t===2,"apt-h5-tag--danger":t===4}},te=e=>({"apt-h5-card--done":Number(e.status)===3,"apt-h5-card--cancel":Number(e.status)===2,"apt-h5-card--missed":Number(e.status)===4}),Z=c(),w=c(),pt=c(),ee=["doctor.appointment/addDoctorNote"],T=c(!1),z=c(!1),O=c(""),tt=c(null),et=P(()=>h(ee)),dt=e=>{var t;if(!e.patient_id){y.msgWarning("该预约没有关联诊单信息");return}(t=Z.value)==null||t.open("edit",e.patient_id)},mt=async e=>{var t;if(!e.patient_id){y.msgWarning("患者信息不完整");return}try{const a=await Ne({patient_id:e.patient_id,diagnosis_id:e.diagnosis_id||e.id});(t=pt.value)==null||t.open({patientId:e.patient_id,patientName:e.patient_name,diagnosisId:e.diagnosis_id||e.id,signatureData:a})}catch(a){y.msgError((a==null?void 0:a.msg)||(a==null?void 0:a.message)||"获取通话签名失败")}},st=e=>(e==null?void 0:e.prescription_audit_status)===1&&Number(e==null?void 0:e.prescription_void_status)!==1?"查看":"开方",vt=e=>{var t;if(!e.diagnosis_id&&!e.patient_id){y.msgWarning("该预约缺少诊单信息,请先编辑患者");return}(t=w.value)==null||t.open(e)},se=()=>{var e,t;k(),(t=(e=Z.value)==null?void 0:e.refreshCaseList)==null||t.call(e)},x=c(!1),D=c(null),le=e=>{D.value=e,x.value=!0},U=e=>{const t=D.value;x.value=!1,t&&(e==="videoQr"&&_t(t),e==="complete"&&ct(t),e==="case"&&oe(t),e==="cancel"&&ne(t))},ct=async e=>{if(tt.value=e,O.value="",et.value){T.value=!0;return}try{await y.confirm("确认患者已就诊完成?"),await It({id:e.id}),y.msgSuccess("操作成功"),k()}catch(t){t!=="cancel"&&y.msgError((t==null?void 0:t.msg)||"操作失败")}},ae=async()=>{const e=tt.value;if(!(!(e!=null&&e.id)||z.value)){z.value=!0;try{const t=O.value.trim();await It({id:e.id});let a="";if(et.value&&t){const p=e.patient_id||e.diagnosis_id;if(p)try{await Me({diagnosis_id:Number(p),content:t})}catch{a="问诊已完成,但备注未保存"}else a="问诊已完成,但该预约没有关联诊单,备注未保存"}a?y.msgWarning(a):y.msgSuccess("操作成功"),T.value=!1,O.value="",tt.value=null,N.value==="detail"&&Ct(),k()}catch(t){y.msgError((t==null?void 0:t.msg)||(t==null?void 0:t.message)||"操作失败")}finally{z.value=!1}}},ne=async e=>{try{await y.confirm("确定要取消该挂号吗?"),await Le({id:e.id}),y.msgSuccess("取消成功"),k()}catch(t){t!=="cancel"&&y.msgError((t==null?void 0:t.msg)||"取消失败")}},oe=async e=>{var t;try{const a=await Re({appointment_id:e.id});a!=null&&a.id?(t=w.value)==null||t.openById(a.id):y.msgWarning("该预约暂无病历记录,请先开方")}catch(a){y.msgError((a==null?void 0:a.msg)||"获取病历失败")}},M=c(!1),B=c(!1),Q=c(""),W=c(null),_t=async e=>{var t;if(!e.patient_id){y.msgWarning("患者信息不完整");return}W.value=e,M.value=!0,B.value=!0,Q.value="";try{const a=await Se();if(!(a!=null&&a.app_id)){y.msgError("小程序未配置,请先配置小程序信息"),M.value=!1;return}const p=await Ae({diagnosis_id:e.doctor_id||"",patient_id:e.patient_id,share_user_id:((t=ot.userInfo)==null?void 0:t.id)||"",mini_program_path:"pages/login/login"});p!=null&&p.qrcode_url?Q.value=p.qrcode_url:y.msgError("二维码生成失败")}catch(a){y.msgError((a==null?void 0:a.msg)||"生成二维码失败,请重试")}finally{B.value=!1}},ie=()=>{W.value&&_t(W.value)},F=c(!1),n=c(null),q=c(null),E=P(()=>({...q.value||{},...n.value||{}})),gt=c([]),yt=c([]),ft=c([]),kt=c([]),ht=c(!1),H=(e,t)=>{if(!t)return"-";const a=e.find(p=>p.value===t);return a?a.name:t},ue=e=>(Array.isArray(e)?e:typeof e=="string"?e.split(/[,,、]/):[]).map(a=>H(kt.value,a.trim())).filter(Boolean).join("、")||"-",re=e=>Number(e)===0?"未婚":Number(e)===1?"已婚":Number(e)===2?"离异":"-",pe=async()=>{const[e,t,a,p]=await Promise.all([G({type:"diagnosis_type"}),G({type:"syndrome_type"}),G({type:"diabetes_type"}),G({type:"past_history"})]);gt.value=(e==null?void 0:e.diagnosis_type)||[],yt.value=(t==null?void 0:t.syndrome_type)||[],ft.value=(a==null?void 0:a.diabetes_type)||[],kt.value=(p==null?void 0:p.past_history)||[]},de=async()=>{ht.value||(await pe(),ht.value=!0)},me=e=>Tt(e==null?void 0:e.diabetes_discovery_year)||!!(e!=null&&e.local_hospital_name)||!!(e!=null&&e.symptoms)||(Array.isArray(e==null?void 0:e.past_history)?e.past_history.length>0:!!(e!=null&&e.past_history)),ve=e=>!!(e!=null&&e.tongue_coating||e!=null&&e.pulse||e!=null&&e.treatment_principle||e!=null&&e.prescription),bt=async e=>{N.value="detail",F.value=!0,n.value=null,q.value=e;try{const[,t]=await Promise.all([de().catch(a=>console.warn("加载详情字典失败:",a)),Pe({id:e.id})]);if(n.value={...e,...t,appointment_id:e.id},t!=null&&t.patient_id)try{const a=await Ie({id:t.patient_id});n.value={...e,...t,...a,id:t.id||e.id,appointment_id:e.id,diagnosis_id:t.patient_id}}catch(a){console.warn("获取患者诊单详情失败:",a)}}catch(t){y.msgError((t==null?void 0:t.msg)||"获取详情失败"),N.value="list"}finally{F.value=!1}},Ct=()=>{N.value="list",F.value=!1},ce=2e4;let Y=null;return Ye(()=>{document.body.classList.add("h5-mode"),k(),Y=setInterval(()=>{k({silent:!0}).catch(()=>{})},ce)}),Ge(()=>{document.body.classList.remove("h5-mode"),Y!==null&&(clearInterval(Y),Y=null)}),(e,t)=>{var Et,$t,Lt,Pt,St,Nt;const a=fe,p=ke,b=he,_e=be,ge=De,ye=Ve,Dt=Ee,Vt=Ce;return i(),u("div",je,[N.value==="list"?(i(),u($,{key:0},[s("header",Je,[s("div",Xe,[m(a,{modelValue:_.patient_name,"onUpdate:modelValue":t[0]||(t[0]=l=>_.patient_name=l),placeholder:"患者姓名",clearable:"","prefix-icon":d(xe),onKeyup:Rt(I,["enter"]),onClear:I},null,8,["modelValue","prefix-icon"]),m(p,{class:"apt-h5-search-btn",type:"primary",onClick:I},{default:v(()=>[...t[19]||(t[19]=[f("查询",-1)])]),_:1})]),s("div",Ze,[(i(!0),u($,null,K(Ht.value,l=>(i(),u("span",{key:l.value,class:S(["apt-h5-chip",{active:j.value===l.value}]),onClick:V=>Kt(l.value)},[f(o(l.label)+" ",1),l.count?(i(),u("em",ts,o(l.count),1)):r("",!0)],10,we))),128))]),s("div",es,[(i(),u($,null,K(Yt,l=>s("span",{key:l.value||"all",class:S(["apt-h5-pill",{active:_.date_preset===l.value}]),onClick:V=>X(l.value)},o(l.label),11,ss)),64))]),s("div",ls,[s("div",as,[t[20]||(t[20]=s("span",{class:"apt-h5-quick-label"},"确认",-1)),(i(),u($,null,K(Gt,l=>s("span",{key:l.value||"all",class:S(["apt-h5-pill",{active:_.diagnosis_confirmed===l.value}]),onClick:V=>jt(l.value)},o(l.label),11,ns)),64))]),m(p,{link:"",type:"primary",size:"small",class:"apt-h5-more-toggle",onClick:t[1]||(t[1]=l=>R.value=!R.value)},{default:v(()=>[f(o(R.value?"收起":"更多")+" ",1),m(b,{class:S({"rotate-180":R.value})},{default:v(()=>[m(d(Ot))]),_:1},8,["class"])]),_:1})]),at(s("div",os,[Wt.value?(i(),C(a,{key:0,modelValue:_.doctor_name,"onUpdate:modelValue":t[2]||(t[2]=l=>_.doctor_name=l),placeholder:"医生",clearable:"",size:"small",onKeyup:Rt(I,["enter"]),onClear:I},null,8,["modelValue"])):r("",!0),m(_e,{modelValue:L.value,"onUpdate:modelValue":t[3]||(t[3]=l=>L.value=l),type:"daterange","range-separator":"至","start-placeholder":"开始日期","end-placeholder":"结束日期","value-format":"YYYY-MM-DD",size:"small",class:"apt-h5-date-range",onChange:Jt},null,8,["modelValue"]),m(p,{size:"small",onClick:Xt},{default:v(()=>[...t[21]||(t[21]=[f("重置",-1)])]),_:1})],512),[[$e,R.value]])]),at((i(),u("main",is,[d(g).lists.length===0&&!d(g).loading?(i(),u("div",us,[m(ge,{description:"暂无问诊","image-size":120})])):r("",!0),(i(!0),u($,null,K(d(g).lists,l=>(i(),u("article",{key:l.id,class:S(["apt-h5-card",te(l)])},[s("header",{class:"apt-h5-card-head",onClick:V=>bt(l)},[s("div",ps,o((l.patient_name||"患").charAt(0)),1),s("div",ds,[s("div",ms,[f(o(l.patient_name||"-")+" ",1),l.gender===1||l.gender===0?(i(),u("span",vs,o(l.gender===1?"男":"女"),1)):r("",!0),l.age!=null?(i(),u("span",cs,o(l.age)+"岁",1)):r("",!0)]),s("div",_s,"#"+o(l.id)+" · "+o(Qt(l.patient_phone)||"-"),1)]),s("div",gs,[s("span",{class:S(["apt-h5-tag",wt(l.status)])},o(l.status_desc||rt(l.status)),3),l.diagnosis_confirmed?(i(),u("span",ys,"已确认")):(i(),u("span",fs,"未确认"))])],8,rs),s("section",{class:"apt-h5-card-body",onClick:V=>bt(l)},[s("div",hs,[t[22]||(t[22]=s("span",{class:"apt-h5-row-key"},"预约",-1)),s("span",bs,o(l.appointment_date||"-")+" "+o(l.appointment_time||""),1)]),s("div",Cs,[t[23]||(t[23]=s("span",{class:"apt-h5-row-key"},"医生",-1)),s("span",Ds,o(l.doctor_name||"-"),1)]),s("div",Vs,[t[24]||(t[24]=s("span",{class:"apt-h5-row-key"},"助理",-1)),s("span",Es,o(l.assistant_name||"-"),1)]),s("div",$s,[t[25]||(t[25]=s("span",{class:"apt-h5-row-key"},"开方",-1)),s("span",Ls,[l.has_prescription?(i(),u("span",Ps,"已开方")):(i(),u("span",Ss,"未开方")),l.has_prescription&&l.prescription_is_system_auto===1?(i(),u("span",Ns,"系统代开")):r("",!0)])]),l.remark?(i(),u("div",Rs,[t[26]||(t[26]=s("span",{class:"apt-h5-row-key"},"备注",-1)),s("span",As,o(l.remark),1)])):r("",!0)],8,ks),s("footer",Is,[d(h)(["tcm.diagnosis/edit"])?(i(),C(p,{key:0,type:"primary",size:"small",plain:"",onClick:V=>dt(l)},{default:v(()=>[...t[27]||(t[27]=[f(" 编辑患者 ",-1)])]),_:1},8,["onClick"])):r("",!0),l.status!==3&&d(h)(["doctor.appointment/prescription"])?(i(),C(p,{key:1,type:"primary",size:"small",icon:d(Ue),onClick:V=>mt(l)},{default:v(()=>[...t[28]||(t[28]=[f(" 通话 ",-1)])]),_:1},8,["icon","onClick"])):r("",!0),d(h)(["tcm.diagnosis/kaifang"])?(i(),C(p,{key:2,type:st(l)==="查看"?"success":"primary",size:"small",plain:"",onClick:V=>vt(l)},{default:v(()=>[f(o(st(l)),1)]),_:2},1032,["type","onClick"])):r("",!0),m(p,{size:"small",class:"apt-h5-more-btn",onClick:V=>le(l)},{default:v(()=>[t[29]||(t[29]=f(" 更多",-1)),m(b,{class:"el-icon--right"},{default:v(()=>[m(d(Ot))]),_:1})]),_:1},8,["onClick"])])],2))),128)),J.value?(i(),u("div",{key:1,class:"apt-h5-load-more",onClick:Zt},o(d(g).loading?"加载中...":"加载更多"),1)):r("",!0),!J.value&&d(g).lists.length>0?(i(),u("div",Ts,"没有更多了")):r("",!0)])),[[Vt,d(g).loading]]),m(ye,{modelValue:x.value,"onUpdate:modelValue":t[8]||(t[8]=l=>x.value=l),title:D.value?`${D.value.patient_name||"问诊"} · 更多操作`:"更多操作",direction:"btt",size:"auto","destroy-on-close":!0},{default:v(()=>[D.value?(i(),u("div",Os,[D.value.status!==3&&d(h)(["tcm.diagnosis/videoQr"])?(i(),u("button",{key:0,class:"apt-h5-action",onClick:t[4]||(t[4]=l=>U("videoQr"))},[m(b,null,{default:v(()=>[m(d(Be))]),_:1}),t[30]||(t[30]=s("span",null,"视频二维码",-1))])):r("",!0),D.value.status!==3&&d(h)(["doctor.appointment/complete"])?(i(),u("button",{key:1,class:"apt-h5-action",onClick:t[5]||(t[5]=l=>U("complete"))},[m(b,null,{default:v(()=>[m(d(Qe))]),_:1}),t[31]||(t[31]=s("span",null,"完成",-1))])):r("",!0),d(h)(["tcm.diagnosis/kaifang"])?(i(),u("button",{key:2,class:"apt-h5-action",onClick:t[6]||(t[6]=l=>U("case"))},[m(b,null,{default:v(()=>[m(d(We))]),_:1}),t[32]||(t[32]=s("span",null,"病历",-1))])):r("",!0),D.value.status===1&&d(h)(["doctor.appointment/cancel"])?(i(),u("button",{key:3,class:"apt-h5-action apt-h5-action--danger",onClick:t[7]||(t[7]=l=>U("cancel"))},[m(b,null,{default:v(()=>[m(d(Fe))]),_:1}),t[33]||(t[33]=s("span",null,"取消挂号",-1))])):r("",!0)])):r("",!0)]),_:1},8,["modelValue","title"])],64)):(i(),u($,{key:1},[s("header",Ms,[s("button",{class:"apt-h5-back",onClick:Ct},[...t[34]||(t[34]=[s("span",null,"‹",-1),f(" 返回 ",-1)])]),s("div",qs,[s("strong",null,o(((Et=n.value)==null?void 0:Et.patient_name)||(($t=q.value)==null?void 0:$t.patient_name)||"问诊详情"),1),s("small",null,o(((Lt=n.value)==null?void 0:Lt.appointment_date)||((Pt=q.value)==null?void 0:Pt.appointment_date)||"")+" "+o(((St=n.value)==null?void 0:St.appointment_time)||((Nt=q.value)==null?void 0:Nt.appointment_time)||""),1)])]),at((i(),u("main",zs,[n.value?(i(),u($,{key:0},[s("section",xs,[t[41]||(t[41]=s("h3",null,"预约信息",-1)),s("div",Us,[s("div",null,[t[35]||(t[35]=s("span",null,"挂号ID",-1)),s("strong",null,o(n.value.id||"-"),1)]),s("div",null,[t[36]||(t[36]=s("span",null,"状态",-1)),s("strong",null,o(n.value.status_desc||rt(n.value.status)),1)]),s("div",null,[t[37]||(t[37]=s("span",null,"医生",-1)),s("strong",null,o(n.value.doctor_name||"-"),1)]),s("div",null,[t[38]||(t[38]=s("span",null,"预约时间",-1)),s("strong",null,o(n.value.appointment_date||"-")+" "+o(n.value.appointment_time||""),1)]),s("div",null,[t[39]||(t[39]=s("span",null,"时段",-1)),s("strong",null,o(n.value.period==="morning"?"上午":n.value.period==="afternoon"?"下午":"-"),1)]),s("div",null,[t[40]||(t[40]=s("span",null,"预约类型",-1)),s("strong",null,o(n.value.appointment_type_desc||"-"),1)])])]),s("section",Bs,[t[58]||(t[58]=s("h3",null,"患者信息",-1)),s("div",Qs,[s("div",null,[t[42]||(t[42]=s("span",null,"姓名",-1)),s("strong",null,o(n.value.patient_name||"-"),1)]),s("div",null,[t[43]||(t[43]=s("span",null,"手机号",-1)),s("strong",null,o(n.value.phone||n.value.patient_phone||"-"),1)]),s("div",Ws,[t[44]||(t[44]=s("span",null,"身份证号",-1)),s("strong",null,o(n.value.id_card||"-"),1)]),s("div",null,[t[45]||(t[45]=s("span",null,"性别",-1)),s("strong",null,o(n.value.gender===1?"男":n.value.gender===0?"女":"-"),1)]),s("div",null,[t[46]||(t[46]=s("span",null,"年龄",-1)),s("strong",null,o(n.value.age!=null?`${n.value.age}岁`:"-"),1)]),s("div",null,[t[47]||(t[47]=s("span",null,"诊断日期",-1)),s("strong",null,o(n.value.diagnosis_date||"-"),1)]),s("div",null,[t[48]||(t[48]=s("span",null,"婚姻状态",-1)),s("strong",null,o(re(n.value.marital_status)),1)]),s("div",null,[t[49]||(t[49]=s("span",null,"身高(cm)",-1)),s("strong",null,o(n.value.height??"-"),1)]),s("div",null,[t[50]||(t[50]=s("span",null,"体重(kg)",-1)),s("strong",null,o(n.value.weight??"-"),1)]),s("div",Fs,[t[51]||(t[51]=s("span",null,"地区",-1)),s("strong",null,o(n.value.region||"-"),1)]),s("div",null,[t[52]||(t[52]=s("span",null,"收缩压(mmHg)",-1)),s("strong",null,o(n.value.systolic_pressure??"-"),1)]),s("div",null,[t[53]||(t[53]=s("span",null,"舒张压(mmHg)",-1)),s("strong",null,o(n.value.diastolic_pressure??"-"),1)]),s("div",null,[t[54]||(t[54]=s("span",null,"空腹血糖(mmol/L)",-1)),s("strong",null,o(n.value.fasting_blood_sugar??"-"),1)]),s("div",null,[t[55]||(t[55]=s("span",null,"诊断类型",-1)),s("strong",null,o(H(gt.value,n.value.diagnosis_type)),1)]),s("div",null,[t[56]||(t[56]=s("span",null,"证型",-1)),s("strong",null,o(H(yt.value,n.value.syndrome_type)),1)]),s("div",null,[t[57]||(t[57]=s("span",null,"糖尿病期数",-1)),s("strong",null,o(H(ft.value,n.value.diabetes_type)),1)])])]),me(n.value)?(i(),u("section",Hs,[t[63]||(t[63]=s("h3",null,"病史信息",-1)),s("div",Ys,[d(Tt)(n.value.diabetes_discovery_year)?(i(),u("div",Gs,[t[59]||(t[59]=s("span",null,"发现糖尿病病史",-1)),s("strong",null,o(d(ze)(n.value.diabetes_discovery_year)),1)])):r("",!0),n.value.local_hospital_name?(i(),u("div",Ks,[t[60]||(t[60]=s("span",null,"当地就诊医院",-1)),s("strong",null,o(n.value.local_hospital_name),1)])):r("",!0),n.value.symptoms?(i(),u("div",js,[t[61]||(t[61]=s("span",null,"症状补充",-1)),s("strong",null,o(n.value.symptoms),1)])):r("",!0),n.value.past_history&&n.value.past_history.length?(i(),u("div",Js,[t[62]||(t[62]=s("span",null,"既往史",-1)),s("strong",null,o(ue(n.value.past_history)),1)])):r("",!0)])])):r("",!0),ve(n.value)?(i(),u("section",Xs,[t[68]||(t[68]=s("h3",null,"诊断信息",-1)),s("div",Zs,[n.value.tongue_coating?(i(),u("div",ws,[t[64]||(t[64]=s("span",null,"舌苔",-1)),s("strong",null,o(n.value.tongue_coating),1)])):r("",!0),n.value.pulse?(i(),u("div",tl,[t[65]||(t[65]=s("span",null,"脉象",-1)),s("strong",null,o(n.value.pulse),1)])):r("",!0),n.value.treatment_principle?(i(),u("div",el,[t[66]||(t[66]=s("span",null,"治则",-1)),s("strong",null,o(n.value.treatment_principle),1)])):r("",!0),n.value.prescription?(i(),u("div",sl,[t[67]||(t[67]=s("span",null,"处方",-1)),s("strong",null,o(n.value.prescription),1)])):r("",!0)])])):r("",!0),s("section",ll,[t[69]||(t[69]=s("h3",null,"备注",-1)),s("p",null,o(n.value.remark||"无"),1)])],64)):r("",!0)])),[[Vt,F.value]]),n.value?(i(),u("footer",al,[s("div",nl,[d(h)(["tcm.diagnosis/edit"])?(i(),C(p,{key:0,type:"primary",plain:"",onClick:t[9]||(t[9]=l=>dt(E.value))},{default:v(()=>[...t[70]||(t[70]=[f(" 编辑患者 ",-1)])]),_:1})):r("",!0),d(h)(["tcm.diagnosis/kaifang"])?(i(),C(p,{key:1,type:"primary",onClick:t[10]||(t[10]=l=>vt(E.value))},{default:v(()=>[f(o(st(E.value)),1)]),_:1})):r("",!0),E.value.status!==3&&d(h)(["doctor.appointment/prescription"])?(i(),C(p,{key:2,type:"primary",plain:"",onClick:t[11]||(t[11]=l=>mt(E.value))},{default:v(()=>[...t[71]||(t[71]=[f(" 通话 ",-1)])]),_:1})):r("",!0),E.value.status!==3&&d(h)(["doctor.appointment/complete"])?(i(),C(p,{key:3,type:"success",plain:"",onClick:t[12]||(t[12]=l=>ct(E.value))},{default:v(()=>[...t[72]||(t[72]=[f(" 完成 ",-1)])]),_:1})):r("",!0)])])):r("",!0)],64)),m(Dt,{modelValue:M.value,"onUpdate:modelValue":t[14]||(t[14]=l=>M.value=l),title:"视频二维码","close-on-click-modal":!1,class:"apt-h5-qr-dialog"},{footer:v(()=>[m(p,{onClick:t[13]||(t[13]=l=>M.value=!1)},{default:v(()=>[...t[75]||(t[75]=[f("关闭",-1)])]),_:1}),B.value?r("",!0):(i(),C(p,{key:0,type:"primary",onClick:ie},{default:v(()=>[...t[76]||(t[76]=[f("重新生成",-1)])]),_:1}))]),default:v(()=>{var l;return[s("div",ol,[B.value?(i(),u("div",il,[m(b,{class:"is-loading",size:36},{default:v(()=>[m(d(He))]),_:1}),t[73]||(t[73]=s("div",null,"生成中...",-1))])):Q.value?(i(),u("div",ul,[s("img",{src:Q.value,alt:"小程序二维码",class:"apt-h5-qr-img"},null,8,rl),s("div",pl,[s("div",null,"患者:"+o(((l=W.value)==null?void 0:l.patient_name)||"-"),1),t[74]||(t[74]=s("div",null,"请使用微信扫描二维码",-1))])])):(i(),u("div",dl,"生成失败,请重试"))])]}),_:1},8,["modelValue"]),m(Dt,{modelValue:T.value,"onUpdate:modelValue":t[17]||(t[17]=l=>T.value=l),title:"完成问诊","close-on-click-modal":!1,class:"apt-h5-complete-dialog","destroy-on-close":""},{footer:v(()=>[m(p,{onClick:t[16]||(t[16]=l=>T.value=!1)},{default:v(()=>[...t[78]||(t[78]=[f("取消",-1)])]),_:1}),m(p,{type:"primary",loading:z.value,onClick:ae},{default:v(()=>[...t[79]||(t[79]=[f("确认完成",-1)])]),_:1},8,["loading"])]),default:v(()=>[s("div",ml,[t[77]||(t[77]=s("p",null,"确认患者已就诊完成?",-1)),et.value?(i(),C(a,{key:0,modelValue:O.value,"onUpdate:modelValue":t[15]||(t[15]=l=>O.value=l),type:"textarea",rows:4,maxlength:"500","show-word-limit":"",placeholder:"填写完成备注,将追加到医生备注时间轴"},null,8,["modelValue"])):r("",!0)])]),_:1},8,["modelValue"]),m(d(qt),{ref_key:"editRef",ref:Z,onSuccess:t[18]||(t[18]=()=>k({silent:!0}))},null,512),m(d(zt),{ref_key:"prescriptionRef",ref:w,onSuccess:se},null,512),m(d(xt),{ref_key:"chatDialogRef",ref:pt},null,512)])}}}),oa=Oe(cl,[["__scopeId","data-v-56df4a13"]]);export{oa as default};
|