WXL
9 天以前 2895b4ea66e09cb355aeb4e030ca0de297bf8ce3
1
import{_ as a,r as e,z as s,A as l,c as t,w as c,i as o,a as n,e as i,b as u,t as r,f as d,h as p,F as f,B as m,aE as _,aF as v,m as g,k as h,S as y,N as k,d as C,aA as b}from"./index-DF3kK8Jo.js";import{_ as F}from"./uni-popup.Df-Bes22.js";const w=a({__name:"chat",setup(a){const w=e({avatar:"/static/doctor/avatar.jpg",name:"张医生",title:"主任医师",hospital:"青岛镜湖医院",specialty:"擅长:呼吸系统疾病、慢性病管理",price:50}),j=e("/static/avatar/default.jpg"),x=e([]),T=e(0),B=e(""),R=e(!1),V=async()=>{B.value.trim()&&(x.value.push({type:"user",content:B.value}),B.value="",await _(),I(),setTimeout(()=>{x.value.push({type:"doctor",content:"您好,根据您描述的症状...",prescription:{time:"2024-03-25 10:30",medicines:[{name:"阿莫西林胶囊",usage:"一次1粒,一日3次"},{name:"布洛芬缓释胶囊",usage:"一次1粒,必要时服用"}]}}),I()},1e3))},I=()=>{_(()=>{const a=v();a.select(".message-list").boundingClientRect(),a.exec(a=>{a[0]&&(T.value=a[0].height)})})};return(a,e)=>{const _=g,v=h,I=o,S=b,A=y,P=k,z=s(l("uni-popup"),F);return n(),t(I,{class:"doctor-chat"},{default:c(()=>[i(I,{class:"doctor-card"},{default:c(()=>[i(I,{class:"basic-info"},{default:c(()=>[i(_,{src:w.value.avatar,mode:"aspectFill",class:"avatar"},null,8,["src"]),i(I,{class:"info"},{default:c(()=>[i(I,{class:"name-title"},{default:c(()=>[i(v,{class:"name"},{default:c(()=>[u(r(w.value.name),1)]),_:1}),i(v,{class:"title"},{default:c(()=>[u(r(w.value.title),1)]),_:1})]),_:1}),i(v,{class:"hospital"},{default:c(()=>[u(r(w.value.hospital),1)]),_:1}),i(v,{class:"specialty"},{default:c(()=>[u(r(w.value.specialty),1)]),_:1})]),_:1})]),_:1}),i(I,{class:"consultation-info"},{default:c(()=>[i(v,{class:"type"},{default:c(()=>[u("图文问诊")]),_:1}),i(v,{class:"price"},{default:c(()=>[u("¥"+r(w.value.price)+"/次",1)]),_:1})]),_:1})]),_:1}),i(A,{class:"chat-content","scroll-y":"","scroll-top":T.value,"scroll-with-animation":!0,onScrolltoupper:a.loadMoreHistory},{default:c(()=>[i(I,{class:"system-message"},{default:c(()=>[i(v,null,{default:c(()=>[u("温馨提示:医生将在24小时内回复您的问题")]),_:1})]),_:1}),i(I,{class:"message-list"},{default:c(()=>[(n(!0),d(f,null,p(x.value,(e,s)=>(n(),t(I,{class:m(["message-item",e.type]),key:s},{default:c(()=>["user"===e.type?(n(),d(f,{key:0},[i(I,{class:"message-content"},{default:c(()=>{var s;return[i(v,null,{default:c(()=>[u(r(e.content),1)]),_:2},1024),(null==(s=e.images)?void 0:s.length)?(n(),t(I,{key:0,class:"image-list"},{default:c(()=>[(n(!0),d(f,null,p(e.images,(s,l)=>(n(),t(_,{key:l,src:s,mode:"aspectFill",onClick:s=>a.previewImage(e.images,l)},null,8,["src","onClick"]))),128))]),_:2},1024)):C("",!0),e.report?(n(),t(I,{key:1,class:"report-card"},{default:c(()=>[i(_,{src:e.report.icon,mode:"aspectFit",class:"icon"},null,8,["src"]),i(I,{class:"info"},{default:c(()=>[i(v,{class:"name"},{default:c(()=>[u(r(e.report.name),1)]),_:2},1024),i(v,{class:"time"},{default:c(()=>[u(r(e.report.time),1)]),_:2},1024)]),_:2},1024)]),_:2},1024)):C("",!0)]}),_:2},1024),i(_,{src:j.value,mode:"aspectFill",class:"avatar"},null,8,["src"])],64)):(n(),d(f,{key:1},[i(_,{src:w.value.avatar,mode:"aspectFill",class:"avatar"},null,8,["src"]),i(I,{class:"message-content"},{default:c(()=>{return[i(S,{nodes:(s=e.content,s.replace(/\n/g,"<br>"))},null,8,["nodes"]),e.prescription?(n(),t(I,{key:0,class:"prescription-card"},{default:c(()=>[i(I,{class:"header"},{default:c(()=>[i(_,{src:"/static/icons/prescription.png",mode:"aspectFit",class:"icon"}),i(v,{class:"title"},{default:c(()=>[u("电子处方")]),_:1})]),_:1}),i(I,{class:"medicine-list"},{default:c(()=>[(n(!0),d(f,null,p(e.prescription.medicines,(a,e)=>(n(),t(I,{class:"medicine-item",key:e},{default:c(()=>[i(v,{class:"name"},{default:c(()=>[u(r(a.name),1)]),_:2},1024),i(v,{class:"usage"},{default:c(()=>[u(r(a.usage),1)]),_:2},1024)]),_:2},1024))),128))]),_:2},1024),i(I,{class:"footer"},{default:c(()=>[i(v,{class:"time"},{default:c(()=>[u("开具时间:"+r(e.prescription.time),1)]),_:2},1024),i(I,{class:"action-btn",onClick:s=>a.viewPrescription(e.prescription)},{default:c(()=>[u(" 查看详情 ")]),_:2},1032,["onClick"])]),_:2},1024)]),_:2},1024)):C("",!0)];var s}),_:2},1024)],64))]),_:2},1032,["class"]))),128))]),_:1})]),_:1},8,["scroll-top","onScrolltoupper"]),i(I,{class:"input-area"},{default:c(()=>[i(I,{class:"toolbar"},{default:c(()=>[i(I,{class:"tool-item",onClick:a.chooseImage},{default:c(()=>[i(v,{class:"iconfont icon-image"})]),_:1},8,["onClick"]),i(I,{class:"tool-item",onClick:a.chooseReport},{default:c(()=>[i(v,{class:"iconfont icon-report"})]),_:1},8,["onClick"]),i(I,{class:"tool-item",onClick:a.recordVoice},{default:c(()=>[i(v,{class:"iconfont icon-voice"})]),_:1},8,["onClick"])]),_:1}),i(I,{class:"input-box"},{default:c(()=>[i(P,{modelValue:B.value,"onUpdate:modelValue":e[0]||(e[0]=a=>B.value=a),"adjust-position":!1,"show-confirm-bar":!1,"cursor-spacing":20,maxlength:500,placeholder:"请详细描述您的症状...",onFocus:a.onFocus,onBlur:a.onBlur},null,8,["modelValue","onFocus","onBlur"]),i(I,{class:m(["send-btn",{active:B.value}]),onClick:V},{default:c(()=>[u(" 发送 ")]),_:1},8,["class"])]),_:1})]),_:1}),i(z,{ref:"voicePopup",type:"bottom"},{default:c(()=>[i(I,{class:"voice-popup"},{default:c(()=>[i(I,{class:"title"},{default:c(()=>[u("按住说话")]),_:1}),i(I,{class:m(["voice-btn",{recording:R.value}]),onTouchstart:a.startRecord,onTouchend:a.stopRecord},{default:c(()=>[i(v,{class:"iconfont icon-mic"})]),_:1},8,["class","onTouchstart","onTouchend"]),i(v,{class:"tip"},{default:c(()=>[u(r(R.value?"松开结束":"按住开始"),1)]),_:1})]),_:1})]),_:1},512)]),_:1})}}},[["__scopeId","data-v-46cc5e24"]]);export{w as default};