2 lines
4.0 KiB
JavaScript
2 lines
4.0 KiB
JavaScript
import{K as T,L as B,N as E,M as N,a0 as P}from"./element-plus-CFxTwCZ2.js";import{B as V}from"./tcm-CEDF0dA_.js";import{f as A,w as D,ak as r,I as n,a as i,aN as l,J as d,O as a,aP as F,G as b,F as U,ap as $,A as G}from"./@vue/runtime-core-C0pg79pw.js";import{Q as p}from"./@vue/shared-mAAVTE9n.js";import{o as y}from"./@vue/reactivity-BIbyPIZJ.js";import{d as H}from"./index-DqzX0p3J.js";import"./@vue/runtime-dom-iFk_KP8y.js";import"./lodash-D3kF6u-c.js";import"./@element-plus/icons-vue-cboVPb4D.js";import"./lodash-es-BADexyn7.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-CYz6RFzi.js";import"./pinia-Ba_jX6-d.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-DIKi2bJB.js";import"./@vueuse/shared-D8934tfB.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-DYKKs4Al.js";import"./tslib-BDyQ-Jie.js";import"./zrender-CTTuYiLF.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-BVMzZUvF.js";const J={class:"call-record-panel"},K={class:"call-record-tip muted"},M={key:0,class:"recording-list"},O=["src"],Q={key:1,class:"text-gray-400"},S=A({__name:"CallRecordPanel",props:{diagnosisId:{}},setup(w,{expose:k}){const m=w,c=y(!1),_=y([]),v=G(()=>`${typeof window<"u"?window.location.origin:""}/api/trtc/recording-notify`),f=async()=>{if(m.diagnosisId){c.value=!0;try{_.value=await V({diagnosis_id:m.diagnosisId})||[]}catch(o){console.error(o),_.value=[]}finally{c.value=!1}}};D(()=>m.diagnosisId,()=>{f()},{immediate:!0}),k({refresh:f});function x(o){return{1:"进行中",2:"已结束",3:"未接听",4:"已取消"}[o]??"—"}function h(o){return!o||typeof o!="string"?!1:/\.(mp4|webm|ogg)(\?|$)/i.test(o)}return(o,t)=>{const C=T,s=E,I=P,L=N,R=B;return r(),n("div",J,[i(C,{type:"info","show-icon":"",closable:!1,class:"mb-4",title:"视频通话与云端录制"},{default:l(()=>[t[6]||(t[6]=d("p",{class:"call-record-tip"}," 下列为与本诊单关联的通话记录。若在腾讯云 TRTC 控制台开启了云端录制并填写回调地址,录制生成后会自动写入「录制回放」。 ",-1)),d("p",K,[t[0]||(t[0]=a(" 回调 URL 示例:",-1)),d("code",null,p(v.value),1),t[1]||(t[1]=a(" (若配置了 ",-1)),t[2]||(t[2]=d("code",null,"trtc.recording_callback_token",-1)),t[3]||(t[3]=a(",请在 URL 后附加 ",-1)),t[4]||(t[4]=d("code",null,"?token=你的密钥",-1)),t[5]||(t[5]=a(") ",-1))])]),_:1}),F((r(),b(L,{data:_.value,border:"",stripe:"","empty-text":"暂无通话记录"},{default:l(()=>[i(s,{label:"开始时间",width:"170",prop:"start_time_text"}),i(s,{label:"结束时间",width:"170",prop:"end_time_text"}),i(s,{label:"通话类型",width:"100"},{default:l(({row:e})=>[a(p(e.call_type===1?"语音":"视频"),1)]),_:1}),i(s,{label:"时长",width:"110",prop:"duration_text"}),i(s,{label:"状态",width:"90"},{default:l(({row:e})=>[a(p(x(e.status)),1)]),_:1}),i(s,{label:"录制",width:"100"},{default:l(({row:e})=>[a(p(e.recording_status_text||"—"),1)]),_:1}),i(s,{label:"录制回放","min-width":"280"},{default:l(({row:e})=>[(e.recording_urls_list||[]).length?(r(),n("div",M,[(r(!0),n(U,null,$(e.recording_urls_list,(u,g)=>(r(),n("div",{key:g,class:"recording-item"},[h(u)?(r(),n("video",{key:0,src:u,controls:"",preload:"metadata",class:"recording-video"},null,8,O)):(r(),b(I,{key:1,href:u,target:"_blank",type:"primary"},{default:l(()=>[a(" 打开链接 "+p(g+1),1)]),_:2},1032,["href"]))]))),128))])):(r(),n("span",Q,"暂无"))]),_:1})]),_:1},8,["data"])),[[R,c.value]])])}}}),Nt=H(S,[["__scopeId","data-v-71e65c55"]]);export{Nt as default};
|