1 |
- import{d as y,e as p,w as V,X as v,Y as w,Z as f,f as r,u as s,E,k as _,a6 as D,a9 as g,aa as $}from"./vue-fae2b924.js";import{_ as H}from"./index.vue_vue_type_script_setup_true_lang-5a30a3fe.js";import{e as x,U as M,G as O,aY as W,aZ as b,a0 as Y,a_ as j,aV as S}from"./radical-e583b742.js";import{k as G}from"./index-7a259168.js";import{u as K}from"./index-ac72395e.js";import{u as I,a as U,d as k,V as Z}from"./usePlay-627225b3.js";import{c as z}from"./gb28181-c1c04a54.js";import"./jb4-52644b2c.js";import"./canvas-14fb4930.js";import"./global-f6e5c3a3.js";const A=y({__name:"list",props:{data:{type:Array,default:[]}},setup(C){const o=C,c=I(),t=p(()=>c.getCurrentChannel),a=K(),i={height:"auto",rowConfig:{keyField:"StartTime",useKey:!0},columnConfig:{useKey:!0},columns:[{field:"deviceId",title:"通道编号",minWidth:"120px",showOverflow:"tooltip"},{field:"name",title:"名称",minWidth:"120px"},{field:"address",title:"地址",minWidth:"120px",showOverflow:"tooltip"},{field:"startTime",title:"录像开始时间",width:"200px",formatter:({cellValue:l})=>x(l).format("YYYY-MM-DD HH:mm:ss")},{field:"endTime",title:"录像结束时间",width:"200px",formatter:({cellValue:l})=>x(l).format("YYYY-MM-DD HH:mm:ss")},{field:"any",title:"录像时长",minWidth:"120px",formatter:({row:l})=>{const{startTime:d,endTime:u}=l;return`${x(u).diff(x(d),"minutes")} 分钟`}},{field:"operate",title:"操作",width:"70px",slots:{default:"operate"},align:"center",fixed:"right"}],data:o.data};return V(()=>o.data,()=>{var l,d,u;(l=o.data)!=null&&l.length?(d=a==null?void 0:a.tableRef)==null||d.loadData(o.data):(u=a==null?void 0:a.tableRef)==null||u.loadData([])}),(l,d)=>(v(),w(s(G),{uid:s(a).uid,gridOptions:i},{operate:f(({row:u})=>[r(s(M),{size:"small",type:"link",onClick:()=>s(U)({row:u,channel:t.value})},{default:f(()=>d[0]||(d[0]=[E(" 播放 ")])),_:2},1032,["onClick"])]),_:1},8,["uid"]))}}),F={class:"h-full"},L={class:"flex justify-between mb-16px"},X={class:"w-full",style:{height:"calc(100% - 32px)"}},q=y({__name:"content",setup(C){const o=I(),c=p(()=>o.getCurrentChannel),t=p(()=>o.getTimeRange),a=_("video"),i=_(),l=_(),d=e=>{if(!i.value||i.value.length===0)return!1;const n=i.value[0]&&e.diff(i.value[0],"days")>2;return i.value[1]&&i.value[1].diff(e,"days")>2||n},u=e=>{e?(i.value=[],l.value=[]):l.value=void 0},B=e=>{i.value=e},N=e=>{o.setTimeRange(e)},R=p(()=>`${c.value.parentId}/${c.value.deviceId}`),P=p(()=>`${k(t.value[1])}`),h=_([]);return V([()=>{var e;return(e=o.getCurrentChannel)==null?void 0:e.key},()=>t.value],()=>{const{parentId:e,deviceId:n}=c.value;e&&n&&z({deviceId:e,channelId:n,start:`${k(t.value[0])}`,end:`${k(t.value[1])}`}).then(m=>{var T;(T=m.data)!=null&&T.length?h.value=m.data:(O.warn("当前无可播放的录像!!!"),h.value=[])}).catch(m=>{console.error(`getRecords-error: ${m}`)})}),(e,n)=>(v(),D("div",F,[g("div",L,[r(s(W),{value:l.value||t.value,disabledDate:d,onOpenChange:u,onChange:N,onCalendarChange:B,allowClear:!1},null,8,["value"]),r(s(j),{value:a.value,"onUpdate:value":n[0]||(n[0]=m=>a.value=m)},{default:f(()=>[r(s(b),{value:"video"},{default:f(()=>[r(s(Y),{icon:"mdi:timeline-clock-outline",class:"v-text-bottom"}),n[1]||(n[1]=g("span",null," 时间轴视图",-1))]),_:1}),r(s(b),{value:"list"},{default:f(()=>[r(s(Y),{icon:"pixelarticons:list-box",class:"v-text-bottom"}),n[2]||(n[2]=g("span",null," 列表视图",-1))]),_:1})]),_:1},8,["value"])]),g("div",X,[a.value==="video"?(v(),w(Z,{data:h.value,streamPath:R.value,endTime:P.value,key:R.value},null,8,["data","streamPath","endTime"])):$("",!0),a.value==="list"?(v(),w(A,{key:1,data:h.value},null,8,["data"])):$("",!0)])]))}}),J={class:"flex",style:{height:"calc(100% - 8px)"}},Q=y({name:"Record"}),ue=y({...Q,setup(C){const o=I(),c=t=>{o.setCurrentChannel({key:t.key,parentId:t.parentId,deviceId:t.deviceId,name:t.deviceId,parentName:t.parentName})};return(t,a)=>(v(),D("div",J,[r(s(S),{class:"w-342px m-r-8px flex-shrink-0",bordered:!1,bodyStyle:{height:"100%",padding:0}},{default:f(()=>[r(H,{onSelect:c})]),_:1}),r(s(S),{class:"flex-1",bordered:!1,bodyStyle:{height:"100%",padding:"16px"}},{default:f(()=>[r(q)]),_:1})]))}});export{ue as default};
|