ship.2de2fafa.js 7.3 KB

1
  1. import{u as ie,r as A,an as F,a8 as oe,P as ce,L as re,M as ue,g as o,o as I,h as P,i as c,w as p,m as s,k as r,z as de,B as pe,j as ve,t as u,N as _,Z as me,_ as he}from"./vendor.5f04cee5.js";import{f as x,T as k,X as C,M as _e,V as fe,F as L,S as G,I as X,s as ge,a as U,b as B,P as Q,c as Se,d as D}from"./ship_tblr.71d4ba3c.js";import{_ as we,s as Ae,b as xe,c as Me}from"./index.bcf1e261.js";var ye="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAvCAYAAADjNOpjAAACsUlEQVRIie2W3UtTYRzHv79tuqN43Oo0X2q56ZzikmxI5qDoRXcRgUSF0E0S1E3SRV11EyYF0XXRVVD/QP9ORBF4USANc2c6dc7z/OQ509x502PRRbDvzXn7PR++v5fn8BDqlOqKwSFRBYQR4MHp1/T142MwVxAMA2BL5LfFgnkNOAl1CgRAP4vgwetPN+fePeChW3NU0IEAeS7xdkgElHWAgp3VJwuLPBwDfVpG06vESVQr39EWBXjPpQ+HDCpVYORfvOd0DPQF4NQRGPmXH2hlU9bCPSl33wTSl8A9yVFx5dFVWq5F0i9AXJqd4ERqnIpLADmXezgUwJqAcfHZG5ZVWNkpzirAxwDj8vO3WJfpbvkBEqi0DE70jopzM+PS1e8o6XIJEGO3s9yXzpEurdMBQPm9bMA4OzvPnfLe9n0NkK7F2MN5mYWN5wLc0MGa2iWyd6+ZqdojArUSGGdm8twRjWO9uA9QNqNYAQ/fuM/Jo6CSsyBmWAngnnaIzM17pG9ammMFsmG+EZnpOwg6NkNdXK00fGp6phZX9QCuFcHH48MiNdlvuvPaEASQDoj+iSSfSGZR3kvbAqRVA6J3Yoo7m4F1D9iuNmRzghB9k1NU3htyR1M4cX4STZ4bwaqQjL+Qr39nAbIaauF4LofKPunaXcZzYxxpbnN3qPWPcEdGoYPS3ZGM41i6CdpA1t2hNnCaVQKqHgS7qjIruR0HRzyA6QwUAIZPoKxz2Fw35A6MJnrNuTqM5DxGk32uQKjd3b66a3epdne5A1s17U+A3KJFXYEcjqi+67cr+UtUVI+xCSlhOiSQZEZBJewOJPIzzlaxdZ1t67HX/8UP1g3492oAG8AGsAFsAP8RMGR5UiLtaHU93HtLxisR1RVIhc8/oGy1Ow7qBwCpsCBP4/+DAGwDcnnbZDDA4J8AAAAASUVORK5CYII=";const v=f=>(me("data-v-0c96b7dd"),f=f(),he(),f),Ee={class:"padding-lr-sm"},Ie={class:"head-container"},Le={class:"head-container",style:{height:"calc(100vh - 126px)","overflow-y":"auto"}},Re=v(()=>s("div",{id:"map",style:{height:"calc(100vh - 84px)",width:"100%"}},null,-1)),Ve={style:{position:"absolute",left:"0.5em",top:"0.5em"}},Te={slot:"header",class:"clearfix bg-blue padding-sm"},be={style:{padding:"10px 20px"}},Oe={class:"text item"},Ne=v(()=>s("span",{class:"text-blue"},"\u7ECF\u5EA6\uFF1A",-1)),Fe={class:"text item",style:{padding:"5px 0"}},Pe=v(()=>s("span",{class:"text-blue"},"\u7EAC\u5EA6\uFF1A",-1)),ke={class:"text item"},Ce=v(()=>s("span",{class:"text-blue"},"\u822A\u901F\uFF1A",-1)),Ge={class:"text item"},Xe=v(()=>s("span",{class:"text-blue"},"\u5403\u6C34\uFF1A",-1)),Ue={class:"text item",style:{padding:"5px 0"}},Be=v(()=>s("span",{class:"text-blue"},"\u8239\u824F\u5411\uFF1A",-1)),Qe={setup(f){const i=ie();let l=A(null),g=A(null);const q=F({center:x([118.26718,22.45402]),zoom:14,minZoom:2,maxZoom:18});let z=Me(),R=null,M=[],y=!1,m={},S=null;const V=A(""),h=A([]),H=F({nowShip:{mmsi:"",name:"-----",lon:"-----",lat:"-----",hdg:"-----",sog:"-----"},hisShip:{},showHis:!1}),{nowShip:a,showHis:De,hisShip:Z}=oe(H),Y=function(e){E(e)},W=function(e){if(e=="")h.value=M;else{let t=[];M.forEach(n=>{JSON.stringify(n).indexOf(e)!=-1&&t.push(n)}),h.value=t}},E=function(e){if(a.value.mmsi!=e){let t=h.value;for(let n=0;n<t.length;n++)if(t[n].mmsi==e){a.value=t[n],O(a.value);break}}},J=function(){let e=document.getElementById("map");for(;e.firstChild;)e.removeChild(e.firstChild);l.value!=null&&l.value.clear();const t=new k({visible:!0,source:new C({url:"https://t1.tianditu.gov.cn/vec_w/wmts?SERVICE=WMTS&REQUEST=GetTile&VERSION=1.0.0&LAYER=vec&STYLE=default&TILEMATRIXSET=w&FORMAT=tiles&TILECOL={x}&TILEROW={y}&TILEMATRIX={z}&tk=317e52a409b6b382957e09003ee7e235"}),isGroup:!0,name:"\u5929\u5730\u56FE\u8DEF\u7F51"}),n=new k({visible:!0,source:new C({url:"https://t3.tianditu.gov.cn/cva_w/wmts?SERVICE=WMTS&REQUEST=GetTile&VERSION=1.0.0&LAYER=cva&STYLE=default&TILEMATRIXSET=w&FORMAT=tiles&TILECOL={x}&TILEROW={y}&TILEMATRIX={z}&tk=317e52a409b6b382957e09003ee7e235"}),isGroup:!0,name:"\u5929\u5730\u56FE\u6587\u5B57\u6807\u6CE8"});l.value=new _e({layers:[t,n],view:new fe(q),target:"map"});var d=new L({});d.setStyle(T(d)),g.value=new U({features:[d]}),S!=null&&l.value.removeLayer(S),S=new B({source:g.value}),l.value.addLayer(S)},T=function(e){return new G({image:new X({anchor:e.values_==null?[0,0]:e.values_.anchor==null?[.5,.98]:e.values_.anchor,anchorOrigin:"top-right",src:ge,rotation:(e.values_==null||e.values_.cog==null?0:e.values_.cog)*(Math.PI/180)})})},K=function(e){var t=new L({geometry:new Q(x(e.ol)),name:e.name,key:e.mmsi,cog:e.hdg,anchor:e.anchor});t.setStyle(j(t)),m[e.mmsi]=new B({source:new U({features:[t]})}),l.value.addLayer(m[e.mmsi])},j=function(e){return new G({image:new X({anchor:e.values_==null?[0,0]:e.values_.anchor==null?[.5,1]:e.values_.anchor,anchorOrigin:"top-right",src:ye,rotation:(e.values_==null||e.values_.cog==null?0:e.values_.cog)*(Math.PI/180)}),text:new Se({textAlign:"center",font:"10px \u5FAE\u8F6F\u96C5\u9ED1",offsetX:0,offsetY:16,text:e.get("name"),fill:new D({color:"#000"}),backgroundFill:new D({color:"rgba(255, 255, 255, 0.8)"}),padding:[2,4,2,4]})})},b=function(){Ae(z.toString()).then(e=>{if(e.data!=null){let t="";e.data!=null?(t=e.data,localStorage.setItem("Histroy-List",t)):localStorage.getItem("Histroy-List")!=null&&localStorage.getItem("Histroy-List")!=null?t=localStorage.getItem("Histroy-List"):t="";let n=xe(t);a.value=n[0],$(n)}})},$=function(e){e.forEach(t=>{m[t.mmsi]!=null&&(m[t.mmsi].getSource().clear(),l.value.removeLayer(m[t.mmsi])),K(t)}),i.state.data.shipList=e,i.state.data.curShipMMsi==null&&(i.state.data.curShipMMsi="413859981"),a.value=e.filter(t=>t.mmsi==i.state.data.curShipMMsi)[0],i.state.data.curShipMMsi=a.value.mmsi,i.state.data.curShipSn=a.value.sn,i.state.data.curShipDevice=a.value.device,h.value=e,M=e,y||(y=!0,O(a.value))},O=function(e){g.value.clear();var t=new L({geometry:new Q(x(e.ol)),cog:e.hdg,anchor:e.anchor});t.setStyle(T(t)),g.value.addFeature(t),l.value.getView().animate({center:x(a.value.ol),duration:1e3}),Z.value=a.value,i.state.data.curShipMMsi=a.value.mmsi,i.state.data.curShipSn=a.value.sn,i.state.data.curShipDevice=a.value.device},ee=function(){l.value&&l.value.on("click",function(e){if(!!l.value){var t=l.value.forEachFeatureAtPixel(e.pixel,function(n,d){return n});t!=null&&E(t.values_.key)}})};return ce([()=>i.state.data.curShipMMsi],([e])=>{E(e)}),re(()=>{J(),y=!1,setTimeout(()=>{b(),R=setInterval(()=>{b()},30*1e3),ee()},100)}),ue(()=>{clearInterval(R)}),(e,t)=>{const n=o("el-input"),d=o("svg-icon"),te=o("el-menu-item"),ae=o("el-menu"),N=o("el-col"),se=o("el-card"),ne=o("el-row");return I(),P("div",Ee,[c(ne,{gutter:20},{default:p(()=>[c(N,{span:3,xs:24},{default:p(()=>[s("div",Ie,[c(n,{placeholder:"\u8BF7\u8F93\u5165\u8239\u8236\u540D\u79F0",clearable:"","prefix-icon":"Search",style:{"margin-top":"10px"},onInput:W,modelValue:V.value,"onUpdate:modelValue":t[0]||(t[0]=w=>V.value=w)},null,8,["modelValue"])]),s("div",Le,[c(ae,{"default-active":""+r(a).mmsi,onSelect:Y},{default:p(()=>[(I(!0),P(de,null,pe(h.value,(w,le)=>(I(),ve(te,{index:""+w.mmsi,key:le},{title:p(()=>[c(d,{"icon-class":"ship",class:"text-blue"}),s("span",null,u(w.name),1)]),_:2},1032,["index"]))),128))]),_:1},8,["default-active"])])]),_:1}),c(N,{span:21,xs:24,style:{position:"relative",padding:"0"}},{default:p(()=>[Re,s("div",Ve,[c(se,{class:"box-card","body-style":{width:"200px",padding:"0px !important"}},{default:p(()=>[s("div",Te,[s("span",null,u(r(a).name),1)]),s("div",be,[s("div",Oe,[Ne,_(u(r(a).lon),1)]),s("div",Fe,[Pe,_(u(r(a).lat),1)]),s("div",ke,[Ce,_(u(r(a).sog)+" \u8282",1)]),s("div",Ge,[Xe,_(u(r(a).draught)+" m",1)]),s("div",Ue,[Be,_(u(r(a).hdg)+" \xB0",1)])])]),_:1})])]),_:1})]),_:1})])}}};var Ze=we(Qe,[["__scopeId","data-v-0c96b7dd"]]);export{Ze as default};