import{d as X,O as Z,k as s,l as $,p as ee,m as ae,r as L,o as N,c as R,a as r,b as i,z as d,u as a,t as le,M as q,D as te,A,G as oe,H as ne}from"./vue.1703796278973.js";import{Y as se,cK as ie,a as ue,cH as ce,cI as re,aA as de}from"./index.17037962789732.js";import"./index.1703796278973303.js";import"./index.1703796278973321.js";import"./index.170379627897317.js";import"./index.170379627897339.js";import"./index.170379627897316.js";import"./index.170379627897319.js";import"./index.170379627897315.js";import"./index.1703796278973301.js";import"./index.170379627897322.js";import"./index.170379627897323.js";import{_ as pe}from"./index.1703796278973323.js";import{_ as me,p as h}from"./iconNode.vue_vue_type_script_setup_true_lang.1703796278973.js";import ve from"./timeLine.1703796278973.js";import{_ as _e}from"./index.vue_vue_type_script_setup_true_lang.17037962789736.js";import{a as B}from"./comm.1703796278973.js";import{a as _}from"./dayjs.min.1703796278973.js";import{_ as fe}from"./_plugin-vue_export-helper.1703796278973.js";import"./index.17037962789733.js";import"./isArray.1703796278973.js";import"./editor.api.1703796278973.js";import"./preload-helper.1703796278973.js";import"./monaco.contribution.1703796278973.js";import"./system.1703796278973.js";import"./index.170379627897332.js";import"./index.170379627897333.js";import"./index.170379627897334.js";import"./default.1703796278973.js";import"./permission.1703796278973.js";import"./consts.1703796278973.js";import"./404.1703796278973.js";const j=w=>(oe("data-v-223938f2"),w=w(),ne(),w),ye={class:"playback-warp"},he={class:"playback-left"},Te={class:"playback-right"},Ye=j(()=>d("div",null,"云端:存储在服务器中",-1)),ge=j(()=>d("div",null,"本地:存储在设备本地",-1)),ke={class:"playback-calendar"},we=["onClick"],Se=j(()=>d("div",null,null,-1)),De=X({__name:"index",setup(w){const b=Z(),T=s(""),n=s("local"),p=s([]),m=s(void 0),f=s(!1),P=s(),C=s(),u=s(0),I=s(0),v=s(0),S=s(null),M=s(!1),Y=$(()=>b.query.id),y=$(()=>b.query.channelId),V=s(""),x=async e=>{if(u.value=0,T.value="",Y.value&&y.value&&e){f.value=!0;const t={startTime:e.format("YYYY-MM-DD 00:00:00"),endTime:e.format("YYYY-MM-DD 23:59:59")},o=await h.queryRecordLocal(Y.value,y.value,t);if(o.status===200&&o.result.length){const c=await h.recordsInServer(Y.value,y.value,{...t,includeFiles:!1});f.value=!1;let g=c.result;c.status===200&&c.result&&(g=o.result.map(k=>({...k,isServer:c.result.length?c.result.some(D=>k.startTime<=D.streamStartTime&&D.streamEndTime<=k.endTime):!1}))),p.value=g}else f.value=!1,p.value=[]}},H=async e=>{if(u.value=0,T.value="",Y.value&&y.value&&e){f.value=!0;const t={startTime:e.format("YYYY-MM-DD 00:00:00"),endTime:e.format("YYYY-MM-DD 23:59:59"),includeFiles:!0},o=await h.recordsInServerFiles(Y.value,y.value,t);f.value=!1,o.status===200&&(p.value=o.result)}},E=(e,t)=>{n.value="cloud",P.value={startTime:e,endTime:t}},F=async e=>{const t=h.downLoadFile(e.id),o=document.createElement("a");o.href=t,o.download=`${y}-${_(e.startTime).format("YYYY-MM-DD-HH-mm-ss")}.mp4`,o.style.display="none",document.body.appendChild(o),o.click(),document.body.removeChild(o)};ee(()=>{const e=b.query.type;if(e){V.value=e;const t=_(new Date);m.value=t,e==="fixed-media"?(n.value="cloud",H(t)):(x(t),n.value="local")}});const O=e=>{e?(v.value=Number(e.startTime.valueOf()),I.value=0,T.value=n.value==="local"?h.playbackLocal(e.deviceId,e.channelId,"mp4",_(e.startTime).format("YYYY-MM-DD HH:mm:ss"),_(e.endTime).format("YYYY-MM-DD HH:mm:ss")):h.playbackStart(e.deviceId)):T.value=""};ae(()=>n.value,e=>{e==="cloud"?H(m.value):x(m.value)});const z=e=>{m.value=e,n.value==="cloud"?H(e):x(e)},J=e=>{var t,o,c;u.value===0||e!==v.value?(t=S.value)==null||t.playByStartTime(e):u.value==1&&e===v.value?(o=C.value)==null||o.pause():u.value==2&&e===v.value&&((c=C.value)==null||c.play())};return(e,t)=>{const o=L("AIcon"),c=se,g=pe,k=ie,D=ue,U=ce,G=re,K=de,Q=L("FullPage"),W=L("page-container");return N(),R(W,null,{default:r(()=>[i(Q,null,{default:r(()=>[d("div",ye,[d("div",he,[i(_e,{ref_key:"player",ref:C,autoplay:"",url:a(T),className:"playback-media",live:a(n)==="local","on-play":()=>{M.value=!1,u.value=1},"on-pause":()=>{u.value=2},"on-ended":()=>{u.value=0,a(S)&&a(M)&&(M.value=!0,a(S).onNextPlay())},"on-error":()=>{u.value=0},"on-time-update":l=>{I.value=l}},null,8,["url","live","on-play","on-pause","on-ended","on-error","on-time-update"]),i(ve,{ref_key:"playTimeNode",ref:S,type:a(n),data:a(p),"date-time":a(m),"on-change":O,"play-status":a(u),"play-time":a(v)+a(I)*1e3,"local-to-server":a(P)},null,8,["type","data","date-time","play-status","play-time","local-to-server"])]),d("div",Te,[i(K,{spinning:a(f)},{default:r(()=>[i(c,{placement:"topLeft"},{title:r(()=>[Ye,ge]),default:r(()=>[d("div",null,[le(" 类型: "),i(o,{type:"QuestionCircleOutlined"})])]),_:1}),i(g,{layout:"horizontal",options:[{label:"云端",value:"cloud",logo:a(B)("/media/cloud.png")},{label:"本地",value:"local",logo:a(B)("/local.png"),disabled:a(V)==="fixed-media"}],checkStyle:!0,modelValue:a(n),"onUpdate:modelValue":t[0]||(t[0]=l=>q(n)?n.value=l:null)},null,8,["options","modelValue"]),d("div",ke,[i(k,{value:a(m),"onUpdate:value":t[1]||(t[1]=l=>q(m)?m.value=l:null),fullscreen:!1,disabledDate:l=>l>a(_)(new Date),onChange:z},null,8,["value","disabledDate"])]),d("div",{class:te(["playback-list",{"no-list":!a(p).length}])},[a(p).length?(N(),R(G,{key:1,class:"playback-list-items",itemLayout:"horizontal",dataSource:a(p)},{renderItem:r(({item:l})=>[i(U,null,{actions:r(()=>[i(c,{key:"play-btn",title:(l.startTime||l.mediaStartTime)===a(v)&&a(u)===1?"暂停":"播放"},{default:r(()=>[d("a",{onClick:be=>J(l.startTime||l.mediaStartTime)},[i(o,{type:(l.startTime||l.mediaStartTime)===a(v)&&a(u)===1?"PauseCircleOutlined":"PlayCircleOutlined"},null,8,["type"])],8,we)]),_:2},1032,["title"]),i(c,{key:"download",title:a(n)!=="local"?"下载录像文件":l.isServer?"查看":"下载到云端"},{default:r(()=>[i(me,{type:a(n),item:l,"on-cloud-view":E,"on-down-load":()=>F(l)},null,8,["type","item","on-down-load"])]),_:2},1032,["title"])]),default:r(()=>[d("div",null,A(a(_)(l.startTime||l.mediaStartTime).format("HH:mm:ss"))+" ~ "+A(a(_)(l.endTime||l.mediaEndTime).format("HH:mm:ss")),1)]),_:2},1024)]),default:r(()=>[Se]),_:1},8,["dataSource"])):(N(),R(D,{key:0,description:"暂无数据"}))],2)]),_:1},8,["spinning"])])])]),_:1})]),_:1})}}});const na=fe(De,[["__scopeId","data-v-223938f2"]]);export{na as default};