You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

10 lines
32KB

  1. var ft=(d,o,i)=>new Promise((l,t)=>{var x=p=>{try{r(i.next(p))}catch(B){t(B)}},f=p=>{try{r(i.throw(p))}catch(B){t(B)}},r=p=>p.done?l(p.value):Promise.resolve(p.value).then(x,f);r((i=i.apply(d,o)).next())});import{_ as Dt}from"./left-circle-fill-356f8bc4.js";import{c as Lt,S as Pt,Z as Qt,e as Ut,r as Ot,a as Wt,g as zt,l as Yt,b as jt,d as St,f as Gt,i as yt,L as ut}from"./index-2b8fa380.js";import{e as Nt,a as Xt,c as It}from"./echarts-7094bd9e.js";import{a as Jt}from"./index-da4e005a.js";import{o as Kt,q as Ht,v as Vt}from"./index-346d0d57.js";import{d as qt,r as G,a as Zt,c as mt,b as a,t as W,e as ht,w as wt,F as $t,v as te,h as ee,j as pt,o as vt,k as Mt,n as ae}from"./index-90c78f99.js";const oe=""+new URL("board-title-81dc1972.png",import.meta.url).href,ie=""+new URL("jf1-4f2ded2e.png",import.meta.url).href,re="data:image/png;base64,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",ne=""+new URL("jf2-dc1e2c8e.png",import.meta.url).href;Nt({type:"series.wordCloud",visualStyleAccessPath:"textStyle",visualStyleMapper:function(d){return{fill:d.get("color")}},visualDrawType:"fill",optionUpdated:function(){var d=this.option;d.gridSize=Math.max(Math.floor(d.gridSize),4)},getInitialData:function(d,o){var i=Lt(d.data,{coordDimensions:["value"]}),l=new Pt(i,this);return l.initData(d.data),l},defaultOption:{maskImage:null,shape:"circle",keepAspect:!1,left:"center",top:"center",width:"70%",height:"80%",sizeRange:[12,60],rotationRange:[-90,90],rotationStep:45,gridSize:8,drawOutOfBound:!1,shrinkToFit:!1,textStyle:{fontWeight:"normal"}}});Xt({type:"wordCloud",render:function(d,o,i){var l=this.group;l.removeAll();var t=d.getData(),x=d.get("gridSize");d.layoutInstance.ondraw=function(f,r,p,B){var h=t.getItemModel(p),J=h.getModel("textStyle"),b=new Qt({style:It(J),scaleX:1/B.info.mu,scaleY:1/B.info.mu,x:(B.gx+B.info.gw/2)*x,y:(B.gy+B.info.gh/2)*x,rotation:B.rot});b.setStyle({x:B.info.fillTextOffsetX,y:B.info.fillTextOffsetY+r*.5,text:f,verticalAlign:"middle",fill:t.getItemVisual(p,"style").fill,fontSize:r}),l.add(b),t.setItemGraphicEl(p,b),b.ensureState("emphasis").style=It(h.getModel(["emphasis","textStyle"]),{state:"emphasis"}),b.ensureState("blur").style=It(h.getModel(["blur","textStyle"]),{state:"blur"}),Ut(b,h.get(["emphasis","focus"]),h.get(["emphasis","blurScope"])),b.stateTransition={duration:d.get("animation")?d.get(["stateAnimation","duration"]):0,easing:d.get(["stateAnimation","easing"])},b.__highDownDispatcher=!0},this._model=d},remove:function(){this.group.removeAll(),this._model.layoutInstance.dispose()},dispose:function(){this._model.layoutInstance.dispose()}});/*!
  2. * wordcloud2.js
  3. * http://timdream.org/wordcloud2.js/
  4. *
  5. * Copyright 2011 - 2019 Tim Guan-tin Chien and contributors.
  6. * Released under the MIT license
  7. */window.setImmediate||(window.setImmediate=function(){return window.msSetImmediate||window.webkitSetImmediate||window.mozSetImmediate||window.oSetImmediate||function(){if(!window.postMessage||!window.addEventListener)return null;var i=[void 0],l="zero-timeout-message",t=function(f){var r=i.length;return i.push(f),window.postMessage(l+r.toString(36),"*"),r};return window.addEventListener("message",function(f){if(!(typeof f.data!="string"||f.data.substr(0,l.length)!==l)){f.stopImmediatePropagation();var r=parseInt(f.data.substr(l.length),36);i[r]&&(i[r](),i[r]=void 0)}},!0),window.clearImmediate=function(f){i[f]&&(i[f]=void 0)},t}()||function(i){window.setTimeout(i,0)}}());window.clearImmediate||(window.clearImmediate=function(){return window.msClearImmediate||window.webkitClearImmediate||window.mozClearImmediate||window.oClearImmediate||function(i){window.clearTimeout(i)}}());var Et=function(){var o=document.createElement("canvas");if(!o||!o.getContext)return!1;var i=o.getContext("2d");return!(!i||!i.getImageData||!i.fillText||!Array.prototype.some||!Array.prototype.push)}(),bt=function(){if(Et){for(var o=document.createElement("canvas").getContext("2d"),i=20,l,t;i;){if(o.font=i.toString(10)+"px sans-serif",o.measureText("W").width===l&&o.measureText("m").width===t)return i+1;l=o.measureText("W").width,t=o.measureText("m").width,i--}return 0}}(),se=function(d){if(Array.isArray(d)){var o=d.slice();return o.splice(0,2),o}else return[]},le=function(o){for(var i,l,t=o.length;t;)i=Math.floor(Math.random()*t),l=o[--t],o[t]=o[i],o[i]=l;return o},rt={},At=function(o,i){if(!Et)return;var l=Math.floor(Math.random()*Date.now());Array.isArray(o)||(o=[o]),o.forEach(function(m,e){if(typeof m=="string"){if(o[e]=document.getElementById(m),!o[e])throw new Error("The element id specified is not found.")}else if(!m.tagName&&!m.appendChild)throw new Error("You must pass valid HTML elements, or ID of the element.")});var t={list:[],fontFamily:'"Trebuchet MS", "Heiti TC", "微軟正黑體", "Arial Unicode MS", "Droid Fallback Sans", sans-serif',fontWeight:"normal",color:"random-dark",minSize:0,weightFactor:1,clearCanvas:!0,backgroundColor:"#fff",gridSize:8,drawOutOfBound:!1,shrinkToFit:!1,origin:null,drawMask:!1,maskColor:"rgba(255,0,0,0.3)",maskGapWidth:.3,layoutAnimation:!0,wait:0,abortThreshold:0,abort:function(){},minRotation:-Math.PI/2,maxRotation:Math.PI/2,rotationStep:.1,shuffle:!0,rotateRatio:.1,shape:"circle",ellipticity:.65,classes:null,hover:null,click:null};if(i)for(var x in i)x in t&&(t[x]=i[x]);if(typeof t.weightFactor!="function"){var f=t.weightFactor;t.weightFactor=function(e){return e*f}}if(typeof t.shape!="function")switch(t.shape){case"circle":default:t.shape="circle";break;case"cardioid":t.shape=function(e){return 1-Math.sin(e)};break;case"diamond":t.shape=function(e){var n=e%(2*Math.PI/4);return 1/(Math.cos(n)+Math.sin(n))};break;case"square":t.shape=function(e){return Math.min(1/Math.abs(Math.cos(e)),1/Math.abs(Math.sin(e)))};break;case"triangle-forward":t.shape=function(e){var n=e%(2*Math.PI/3);return 1/(Math.cos(n)+Math.sqrt(3)*Math.sin(n))};break;case"triangle":case"triangle-upright":t.shape=function(e){var n=(e+Math.PI*3/2)%(2*Math.PI/3);return 1/(Math.cos(n)+Math.sqrt(3)*Math.sin(n))};break;case"pentagon":t.shape=function(e){var n=(e+.955)%(2*Math.PI/5);return 1/(Math.cos(n)+.726543*Math.sin(n))};break;case"star":t.shape=function(e){var n=(e+.955)%(2*Math.PI/10);return(e+.955)%(2*Math.PI/5)-2*Math.PI/10>=0?1/(Math.cos(2*Math.PI/10-n)+3.07768*Math.sin(2*Math.PI/10-n)):1/(Math.cos(n)+3.07768*Math.sin(n))};break}t.gridSize=Math.max(Math.floor(t.gridSize),4);var r=t.gridSize,p=r-t.maskGapWidth,B=Math.abs(t.maxRotation-t.minRotation),h=Math.min(t.maxRotation,t.minRotation),J=t.rotationStep,b,S,T,N,R,v,K;function z(m,e){return"hsl("+(Math.random()*360).toFixed()+","+(Math.random()*30+70).toFixed()+"%,"+(Math.random()*(e-m)+m).toFixed()+"%)"}switch(t.color){case"random-dark":K=function(){return z(10,50)};break;case"random-light":K=function(){return z(50,90)};break;default:typeof t.color=="function"&&(K=t.color);break}var q;typeof t.fontWeight=="function"&&(q=t.fontWeight);var X=null;typeof t.classes=="function"&&(X=t.classes);var H=!1,tt=[],et,nt=function(e){var n=e.currentTarget,s=n.getBoundingClientRect(),u,c;e.touches?(u=e.touches[0].clientX,c=e.touches[0].clientY):(u=e.clientX,c=e.clientY);var g=u-s.left,k=c-s.top,A=Math.floor(g*(n.width/s.width||1)/r),C=Math.floor(k*(n.height/s.height||1)/r);return tt[A]?tt[A][C]:null},st=function(e){var n=nt(e);if(et!==n){if(et=n,!n){t.hover(void 0,void 0,e);return}t.hover(n.item,n.dimension,e)}},I=function(e){var n=nt(e);n&&(t.click(n.item,n.dimension,e),e.preventDefault())},Q=[],Z=function(e){if(Q[e])return Q[e];var n=e*8,s=n,u=[];for(e===0&&u.push([N[0],N[1],0]);s--;){var c=1;t.shape!=="circle"&&(c=t.shape(s/n*2*Math.PI)),u.push([N[0]+e*c*Math.cos(-s/n*2*Math.PI),N[1]+e*c*Math.sin(-s/n*2*Math.PI)*t.ellipticity,s/n*2*Math.PI])}return Q[e]=u,u},U=function(){return t.abortThreshold>0&&new Date().getTime()-v>t.abortThreshold},lt=function(){return t.rotateRatio===0||Math.random()>t.rotateRatio?0:B===0?h:h+Math.round(Math.random()*B/J)*J},ct=function(e,n,s,u){var c=t.weightFactor(n);if(c<=t.minSize)return!1;var g=1;c<bt&&(g=function(){for(var _t=2;_t*c<bt;)_t+=2;return _t}());var k;q?k=q(e,n,c,u):k=t.fontWeight;var A=document.createElement("canvas"),C=A.getContext("2d",{willReadFrequently:!0});C.font=k+" "+(c*g).toString(10)+"px "+t.fontFamily;var P=C.measureText(e).width/g,_=Math.max(c*g,C.measureText("m").width,C.measureText("W").width)/g,y=P+_*2,D=_*3,O=Math.ceil(y/r),Y=Math.ceil(D/r);y=O*r,D=Y*r;var F=-P/2,w=-_*.4,M=Math.ceil((y*Math.abs(Math.sin(s))+D*Math.abs(Math.cos(s)))/r),L=Math.ceil((y*Math.abs(Math.cos(s))+D*Math.abs(Math.sin(s)))/r),j=L*r,it=M*r;A.setAttribute("width",j),A.setAttribute("height",it),C.scale(1/g,1/g),C.translate(j*g/2,it*g/2),C.rotate(-s),C.font=k+" "+(c*g).toString(10)+"px "+t.fontFamily,C.fillStyle="#000",C.textBaseline="middle",C.fillText(e,F*g,(w+c*.5)*g);var gt=C.getImageData(0,0,j,it).data;if(U())return!1;for(var Bt=[],at=L,$,Ct,xt,V=[M/2,L/2,M/2,L/2];at--;)for($=M;$--;){xt=r;t:for(;xt--;)for(Ct=r;Ct--;)if(gt[(($*r+xt)*j+(at*r+Ct))*4+3]){Bt.push([at,$]),at<V[3]&&(V[3]=at),at>V[1]&&(V[1]=at),$<V[0]&&(V[0]=$),$>V[2]&&(V[2]=$);break t}}return{mu:g,occupied:Bt,bounds:V,gw:L,gh:M,fillTextOffsetX:F,fillTextOffsetY:w,fillTextWidth:P,fillTextHeight:_,fontSize:c}},E=function(e,n,s,u,c){for(var g=c.length;g--;){var k=e+c[g][0],A=n+c[g][1];if(k>=S||A>=T||k<0||A<0){if(!t.drawOutOfBound)return!1;continue}if(!b[k][A])return!1}return!0},ot=function(e,n,s,u,c,g,k,A,C,P){var _=s.fontSize,y;K?y=K(u,c,_,g,k,P):y=t.color;var D;q?D=q(u,c,_,P):D=t.fontWeight;var O;X?O=X(u,c,_,P):O=t.classes,o.forEach(function(Y){if(Y.getContext){var F=Y.getContext("2d"),w=s.mu;F.save(),F.scale(1/w,1/w),F.font=D+" "+(_*w).toString(10)+"px "+t.fontFamily,F.fillStyle=y,F.translate((e+s.gw/2)*r*w,(n+s.gh/2)*r*w),A!==0&&F.rotate(-A),F.textBaseline="middle",F.fillText(u,s.fillTextOffsetX*w,(s.fillTextOffsetY+_*.5)*w),F.restore()}else{var M=document.createElement("span"),L="";L="rotate("+-A/Math.PI*180+"deg) ",s.mu!==1&&(L+="translateX(-"+s.fillTextWidth/4+"px) scale("+1/s.mu+")");var j={position:"absolute",display:"block",font:D+" "+_*s.mu+"px "+t.fontFamily,left:(e+s.gw/2)*r+s.fillTextOffsetX+"px",top:(n+s.gh/2)*r+s.fillTextOffsetY+"px",width:s.fillTextWidth+"px",height:s.fillTextHeight+"px",lineHeight:_+"px",whiteSpace:"nowrap",transform:L,webkitTransform:L,msTransform:L,transformOrigin:"50% 40%",webkitTransformOrigin:"50% 40%",msTransformOrigin:"50% 40%"};y&&(j.color=y),M.textContent=u;for(var it in j)M.style[it]=j[it];if(C)for(var gt in C)M.setAttribute(gt,C[gt]);O&&(M.className+=O),Y.appendChild(M)}})},kt=function(e,n,s,u,c){if(!(e>=S||n>=T||e<0||n<0)){if(b[e][n]=!1,s){var g=o[0].getContext("2d");g.fillRect(e*r,n*r,p,p)}H&&(tt[e][n]={item:c,dimension:u})}},Tt=function(e,n,s,u,c,g){var k=c.occupied,A=t.drawMask,C;A&&(C=o[0].getContext("2d"),C.save(),C.fillStyle=t.maskColor);var P;if(H){var _=c.bounds;P={x:(e+_[3])*r,y:(n+_[0])*r,w:(_[1]-_[3]+1)*r,h:(_[2]-_[0]+1)*r}}for(var y=k.length;y--;){var D=e+k[y][0],O=n+k[y][1];D>=S||O>=T||D<0||O<0||kt(D,O,A,P,g)}A&&C.restore()},Ft=function m(e,n){if(n>20)return null;var s,u,c;Array.isArray(e)?(s=e[0],u=e[1]):(s=e.word,u=e.weight,c=e.attributes);var g=lt(),k=se(e),A=ct(s,u,g,k);if(!A||U())return!1;if(!t.drawOutOfBound&&!t.shrinkToFit){var C=A.bounds;if(C[1]-C[3]+1>S||C[2]-C[0]+1>T)return!1}for(var P=R+1,_=function(Y){var F=Math.floor(Y[0]-A.gw/2),w=Math.floor(Y[1]-A.gh/2),M=A.gw,L=A.gh;return E(F,w,M,L,A.occupied)?(ot(F,w,A,s,u,R-P,Y[2],g,c,k),Tt(F,w,M,L,A,e),{gx:F,gy:w,rot:g,info:A}):!1};P--;){var y=Z(R-P);t.shuffle&&(y=[].concat(y),le(y));for(var D=0;D<y.length;D++){var O=_(y[D]);if(O)return O}}return t.shrinkToFit?(Array.isArray(e)?e[1]=e[1]*3/4:e.weight=e.weight*3/4,m(e,n+1)):null},dt=function(e,n,s){if(n)return!o.some(function(u){var c=new CustomEvent(e,{detail:s||{}});return!u.dispatchEvent(c)},this);o.forEach(function(u){var c=new CustomEvent(e,{detail:s||{}});u.dispatchEvent(c)},this)},Rt=function(){var e=o[0];if(e.getContext)S=Math.ceil(e.width/r),T=Math.ceil(e.height/r);else{var n=e.getBoundingClientRect();S=Math.ceil(n.width/r),T=Math.ceil(n.height/r)}if(dt("wordcloudstart",!0)){N=t.origin?[t.origin[0]/r,t.origin[1]/r]:[S/2,T/2],R=Math.floor(Math.sqrt(S*S+T*T)),b=[];var s,u,c;if(!e.getContext||t.clearCanvas)for(o.forEach(function(w){if(w.getContext){var M=w.getContext("2d");M.fillStyle=t.backgroundColor,M.clearRect(0,0,S*(r+1),T*(r+1)),M.fillRect(0,0,S*(r+1),T*(r+1))}else w.textContent="",w.style.backgroundColor=t.backgroundColor,w.style.position="relative"}),s=S;s--;)for(b[s]=[],u=T;u--;)b[s][u]=!0;else{var g=document.createElement("canvas").getContext("2d");g.fillStyle=t.backgroundColor,g.fillRect(0,0,1,1);var k=g.getImageData(0,0,1,1).data,A=e.getContext("2d").getImageData(0,0,S*r,T*r).data;s=S;for(var C,P;s--;)for(b[s]=[],u=T;u--;){P=r;t:for(;P--;)for(C=r;C--;)for(c=4;c--;)if(A[((u*r+P)*S*r+(s*r+C))*4+c]!==k[c]){b[s][u]=!1;break t}b[s][u]!==!1&&(b[s][u]=!0)}A=g=k=void 0}if(t.hover||t.click){for(H=!0,s=S+1;s--;)tt[s]=[];t.hover&&e.addEventListener("mousemove",st),t.click&&(e.addEventListener("click",I),e.addEventListener("touchstart",I),e.addEventListener("touchend",function(w){w.preventDefault()}),e.style.webkitTapHighlightColor="rgba(0, 0, 0, 0)"),e.addEventListener("wordcloudstart",function w(){e.removeEventListener("wordcloudstart",w),e.removeEventListener("mousemove",st),e.removeEventListener("click",I),et=void 0})}c=0;var _,y,D=!0;t.layoutAnimation?t.wait!==0?(_=window.setTimeout,y=window.clearTimeout):(_=window.setImmediate,y=window.clearImmediate):(_=function(w){w()},y=function(){D=!1});var O=function(M,L){o.forEach(function(j){j.addEventListener(M,L)},this)},Y=function(M,L){o.forEach(function(j){j.removeEventListener(M,L)},this)},F=function w(){Y("wordcloudstart",w),y(rt[l])};O("wordcloudstart",F),rt[l]=(t.layoutAnimation?_:setTimeout)(function w(){if(D){if(c>=t.list.length){y(rt[l]),dt("wordcloudstop",!1),Y("wordcloudstart",F),delete rt[l];return}v=new Date().getTime();var M=Ft(t.list[c],0),L=!dt("wordclouddrawn",!0,{item:t.list[c],drawn:M});if(U()||L){y(rt[l]),t.abort(),dt("wordcloudabort",!1),dt("wordcloudstop",!1),Y("wordcloudstart",F);return}c++,rt[l]=_(w,t.wait)}},t.wait)}};Rt()};At.isSupported=Et;At.minFontSize=bt;if(!At.isSupported)throw new Error("Sorry your browser not support wordCloud");function ce(d){for(var o=d.getContext("2d"),i=o.getImageData(0,0,d.width,d.height),l=o.createImageData(i),t=0,x=0,f=0;f<i.data.length;f+=4){var r=i.data[f+3];if(r>128){var p=i.data[f]+i.data[f+1]+i.data[f+2];t+=p,++x}}for(var B=t/x,f=0;f<i.data.length;f+=4){var p=i.data[f]+i.data[f+1]+i.data[f+2],r=i.data[f+3];r<128||p>B?(l.data[f]=0,l.data[f+1]=0,l.data[f+2]=0,l.data[f+3]=0):(l.data[f]=255,l.data[f+1]=255,l.data[f+2]=255,l.data[f+3]=255)}o.putImageData(l,0,0)}Ot(function(d,o){d.eachSeriesByType("wordCloud",function(i){var l=zt(i.getBoxLayoutParams(),{width:o.getWidth(),height:o.getHeight()}),t=i.get("keepAspect"),x=i.get("maskImage"),f=x?x.width/x.height:1;t&&de(l,f);var r=i.getData(),p=document.createElement("canvas");p.width=l.width,p.height=l.height;var B=p.getContext("2d");if(x)try{B.drawImage(x,0,0,p.width,p.height),ce(p)}catch(R){console.error("Invalid mask image"),console.error(R.toString())}var h=i.get("sizeRange"),J=i.get("rotationRange"),b=r.getDataExtent("value"),S=Math.PI/180,T=i.get("gridSize");At(p,{list:r.mapArray("value",function(R,v){var K=r.getItemModel(v);return[r.getName(v),K.get("textStyle.fontSize",!0)||Yt(R,b,h),v]}).sort(function(R,v){return v[1]-R[1]}),fontFamily:i.get("textStyle.fontFamily")||i.get("emphasis.textStyle.fontFamily")||d.get("textStyle.fontFamily"),fontWeight:i.get("textStyle.fontWeight")||i.get("emphasis.textStyle.fontWeight")||d.get("textStyle.fontWeight"),gridSize:T,ellipticity:l.height/l.width,minRotation:J[0]*S,maxRotation:J[1]*S,clearCanvas:!x,rotateRatio:1,rotationStep:i.get("rotationStep")*S,drawOutOfBound:i.get("drawOutOfBound"),shrinkToFit:i.get("shrinkToFit"),layoutAnimation:i.get("layoutAnimation"),shuffle:!1,shape:i.get("shape")});function N(R){var v=R.detail.item;R.detail.drawn&&i.layoutInstance.ondraw&&(R.detail.drawn.gx+=l.x/T,R.detail.drawn.gy+=l.y/T,i.layoutInstance.ondraw(v[0],v[1],v[2],R.detail.drawn))}p.addEventListener("wordclouddrawn",N),i.layoutInstance&&i.layoutInstance.dispose(),i.layoutInstance={ondraw:null,dispose:function(){p.removeEventListener("wordclouddrawn",N),p.addEventListener("wordclouddrawn",function(R){R.preventDefault()})}}})});Wt(function(d){var o=(d||{}).series;!jt(o)&&(o=o?[o]:[]);var i=["shadowColor","shadowBlur","shadowOffsetX","shadowOffsetY"];St(o,function(t){if(t&&t.type==="wordCloud"){var x=t.textStyle||{};l(x.normal),l(x.emphasis)}});function l(t){t&&St(i,function(x){t.hasOwnProperty(x)&&(t["text"+Gt(x)]=t[x])})}});function de(d,o){var i=d.width,l=d.height;i>l*o?(d.x+=(i-l*o)/2,d.width=l*o):(d.y+=(l-i/o)/2,d.height=i/o)}const fe=""+new URL("chart-bg-acd2a914.png",import.meta.url).href,ue={class:"hardwareOverview flex flex-col relative"},he=a("img",{src:Dt},null,-1),ve=a("span",null,"返回首页",-1),ge=[he,ve],me=a("p",{class:"home-title"},[a("img",{src:oe,class:"img-title"})],-1),we={class:"flex flex-1"},pe={class:"left flex flex-col"},Ae={class:"bot flex-1 mb-[1vh]"},Ce={class:"box3 box h-full flex flex-col"},xe=a("p",{class:"head flex items-center justify-center"},"机房状态",-1),_e={class:"flex justify-between items-center flex-1"},ye={class:"jf jf1 flex flex-col justify-between items-center"},Ie={class:"flex flex-1 flex flex-col justify-between"},Me={class:"top-data flex items-center justify-between"},be={class:"orange-data data-div ml-[-1.1vw]"},Ee={class:"value"},Be=a("p",{class:"label"},"服务器数量",-1),Se={class:"blue-data data-div"},ke={class:"value"},Te=a("p",{class:"label"},"云区",-1),Fe={class:"orange-data data-div mr-[-1.1vw]"},Re={class:"value"},De=a("p",{class:"label"},"交换机数量",-1),Le={class:"bot-data flex justify-between items-center"},Pe={class:"orange-data data-div ml-[-1.1vw]"},Qe={class:"value"},Ue=a("p",{class:"label"},"路由器数量",-1),Oe={class:"orange-data data-div mr-[-1.1vw]"},We={class:"value"},ze=a("p",{class:"label"},"机柜数量",-1),Ye=a("img",{class:"w-[6.7vw] h-[4.07vh] mt-[7.8vh]",src:ie},null,-1),je=a("img",{src:re,class:"fg-line-img"},null,-1),Ge={class:"jf jf2 flex flex-col justify-between items-center"},Ne={class:"flex flex-1 flex flex-col justify-between"},Xe={class:"top-data flex items-center justify-between"},Je={class:"orange-data data-div ml-[-1.1vw]"},Ke={class:"value"},He=a("p",{class:"label"},"服务器数量",-1),Ve={class:"blue-data data-div"},qe={class:"value"},Ze=a("p",{class:"label"},"云区",-1),$e={class:"orange-data data-div mr-[-1.1vw]"},ta={class:"value"},ea=a("p",{class:"label"},"交换机数量",-1),aa={class:"bot-data flex justify-between items-center"},oa={class:"orange-data data-div ml-[-0.8vw]"},ia={class:"value"},ra=a("p",{class:"label"},"路由器数量",-1),na={class:"orange-data data-div mr-[-1.1vw]"},sa={class:"value"},la=a("p",{class:"label"},"机柜数量",-1),ca=a("img",{class:"w-[6.7vw] h-[4.07vh] mt-[7.8vh]",src:ne},null,-1),da={class:"top flex"},fa={class:"box1 box flex-1 h-full flex flex-col"},ua=a("p",{class:"border-top"},null,-1),ha=a("div",{class:"head"},[a("p",{class:"tit"},"使用率统计")],-1),va={class:"box2 box flex-1 h-full flex flex-col"},ga=a("p",{class:"border-top"},null,-1),ma=a("div",{class:"head"},[a("p",{class:"tit"},"数量统计")],-1),wa={class:"right flex-1 flex flex-col"},pa={class:"top h-full"},Aa={class:"box box2 flex flex-col h-full"},Ca=a("p",{class:"border-top"},null,-1),xa={class:"head flex items-center justify-between"},_a=a("p",{class:"tit"},"服务器类型分布",-1),ya={class:"flex-1"},Ia={class:"bot flex-1"},Ma={class:"box box2 flex flex-col h-full"},ba=a("p",{class:"border-top"},null,-1),Ea={class:"head flex justify-between items-center"},Ba=a("p",{class:"tit"},"各单位资源详情",-1),Sa={class:"tab flex"},ka={class:"content flex-1"},Ta={class:"h-full flex flex-col"},Fa={class:"list-head"},Ra=a("p",{class:"flex-1 pl-[2.6vw]"},"单位名称",-1),Da={class:"index"},La={class:"data"},Pa={class:"flex-1 relative"},Qa=["title"],Ua={class:"index"},Oa={class:"data"},Ka=qt({__name:"index",setup(d){const o=I=>{const Z=window.innerWidth/1920;return parseInt((I*Z).toString())};let i,l,t;const x=G(),f=G(),r=G("2024"),p=()=>ft(this,null,function*(){const I=yield Kt({year:r.value});f.value=I.data,B()}),B=()=>{i=yt(x.value);const I={color:[new ut(0,0,1,0,[{offset:0,color:"rgba(15, 135, 255, 1)"},{offset:1,color:"rgba(117, 208, 255, 1)"}]),new ut(0,0,1,0,[{offset:0,color:"rgba(52, 219, 255, 1)"},{offset:1,color:"rgba(90, 216, 166, 1)"}]),new ut(0,0,1,0,[{offset:0,color:"rgba(132, 162, 207, 1)"},{offset:.5,color:"rgba(62, 95, 146, 1)"}])],tooltip:{show:!0},legend:{itemWidth:6,itemHeight:6,icon:"circle",orient:"vertical",top:"center",right:o(20),textStyle:{fontSize:o(18),color:"#ffffff"}},graphic:[{type:"image",left:o(61),top:"center",z:0,bounding:"all",style:{image:fe,width:o(344),height:o(344)}}],series:[{name:"服务器类型分布",type:"pie",radius:o(140),center:[o(231),"50%"],avoidLabelOverlap:!1,label:{show:!0,position:"inner",formatter:"{c}",color:"#ffffff",fontSize:o(20)},itemStyle:{borderWidth:2,borderColor:"RGBA(22, 72, 206, 1)"},data:[{value:f.value.ecsServer,name:"云服务器"},{value:f.value.rdsServer,name:"数据库服务器"}]}]};I&&i.setOption(I)},h=G(),J=()=>ft(this,null,function*(){const I=yield Jt();h.value=I.data,h.value.diskMemory=Math.round(I.data.diskMemory/1024*100)/100||0,h.value.diskUsage=Math.round(I.data.diskUsage/1024*100)/100||0,S(),N()}),b=G(),S=()=>{l=yt(b.value);const I={grid:{top:"18%",bottom:o(30),left:o(55),right:o(5)},tooltip:{show:!0,trigger:"axis",valueFormatter:function(Q){return Q+"%"}},xAxis:{type:"category",data:["硬盘占用率","CPU利用率","内存利用率","磁盘利用率"],axisLine:{lineStyle:{color:"rgba(255, 255, 255, 0.15)"}},axisTick:{show:!1},axisLabel:{color:"#ffffff",interval:0}},yAxis:{type:"value",name:"单位(%)",nameTextStyle:{color:"#ffffff",fontSize:o(16),nameLocation:"start"},axisLabel:{color:"#ffffff"},splitLine:{lineStyle:{color:"rgba(255, 255, 255, 0.15)"}}},series:[{name:"使用率统计",data:[h.value&&h.value.hardDiskOccupancyRate||0,h.value&&h.value.cpuUtilizationRate||0,h.value&&h.value.memoryUtilizationRate||0,h.value&&h.value.diskUtilization||0],type:"bar",barWidth:o(40),itemStyle:{color:new ut(0,0,0,1,[{offset:0,color:"rgba(52, 219, 255, 1)"},{offset:1,color:"rgba(52, 219, 255, 0)"}],!1)},label:{position:"top",show:!0,color:"rgba(52, 219, 255, 1)",rich:{line:{height:2,borderColor:"rgba(52, 219, 255, 1)",borderWidth:o(40),align:"center",borderStyle:"solid"},a:{align:"center",fontSize:o(20),fontWeight:"bold",fontFamily:"DIN"}},formatter:["{a|{c}}%","{line|}"].join(`
  8. `)}}]};I&&l.setOption(I)},T=G(),N=()=>{t=yt(T.value);const I={grid:{top:"12%",bottom:o(50),left:o(100),right:o(5)},tooltip:{show:!0,trigger:"axis",formatter:Q=>{let Z="";return Q.forEach(function(U){const lt=U.seriesName,ct=U.value,ot=`${U.marker}${lt}&nbsp;&nbsp;&nbsp; ${ct}${["服务器数量","交换机数量"].includes(U.name)?"台":["硬盘内存","硬盘使用量"].includes(U.name)?"T":["硬盘内存","硬盘使用量","内存","存储"].includes(U.name)?"GB":["硬盘数量"].includes(U.name)?"个":["CPU"].includes(U.name)?"核":""}`;Z+=`${ot}<br/>`}),`${Q[0].name}<br/>${Z}`}},xAxis:{type:"category",data:["服务器数量","交换机数量","硬盘内存","硬盘使用量","硬盘数量","CPU","内存"],axisLine:{lineStyle:{color:"rgba(255, 255, 255, 0.15)"}},axisTick:{show:!1},axisLabel:{color:"#ffffff",interval:0,rotate:20}},yAxis:{type:"value",axisLabel:{color:"#ffffff"},splitLine:{lineStyle:{color:"rgba(255, 255, 255, 0.15)"}}},series:[{name:"数量统计",data:[h.value&&h.value.serverCount||0,h.value&&h.value.switchCount||0,h.value&&h.value.diskMemory||0,h.value&&h.value.diskUsage||0,h.value&&h.value.diskCount||0,h.value&&h.value.cpuCores||0,h.value&&h.value.memoryGb||0],type:"bar",barWidth:o(40),itemStyle:{color:new ut(0,0,0,1,[{offset:0,color:"rgba(52, 219, 255, 1)"},{offset:1,color:"rgba(52, 219, 255, 0)"}],!1)},label:{position:"top",show:!0,color:"rgba(52, 219, 255, 1)",rich:{line:{height:2,borderColor:"rgba(52, 219, 255, 1)",borderWidth:o(40),align:"center",borderStyle:"solid"},a:{align:"center",fontSize:o(20),fontWeight:"bold",fontFamily:"DIN"}},formatter:["{a|{c}}","{line|}"].join(`
  9. `)}}]};I&&t.setOption(I)},R=()=>{p(),J(),K(),q()},v=G(),K=()=>ft(this,null,function*(){const I=yield Ht();v.value=I.data}),z=G("CPU"),q=()=>ft(this,null,function*(){st();const I=yield Vt({resourceType:z.value});X.value=I.data||[],X.value&&X.value.length&&nt()}),X=G(),H=G(),tt=G(),et=G(),nt=()=>{et.value=setInterval(()=>{H.value.scrollTop+H.value.clientHeight>=tt.value.scrollHeight?H.value.scrollTop=0:H.value.scrollTop+=1},100)},st=()=>{et.value&&clearInterval(et.value)};return Zt(()=>{R(),window.addEventListener("resize",()=>{i.resize(),l.resize(),t.resize()})}),(I,Q)=>{const Z=pt("el-date-picker"),U=pt("el-radio-button"),lt=pt("el-radio-group"),ct=pt("no-data");return vt(),mt("div",ue,[a("div",{class:"back-div",onClick:Q[0]||(Q[0]=E=>I.$router.go(-1))},ge),me,a("div",we,[a("div",pe,[a("div",Ae,[a("div",Ce,[xe,a("div",_e,[a("div",ye,[a("div",Ie,[a("div",Me,[a("div",be,[a("p",Ee,W(v.value&&v.value.computerRooms[0].fwqCount||0),1),Be]),a("div",Se,[a("p",ke,W(v.value&&v.value.computerRooms[0].areaCount||0),1),Te]),a("div",Fe,[a("p",Re,W(v.value&&v.value.computerRooms[0].jhjCount||0),1),De])]),a("div",Le,[a("div",Pe,[a("p",Qe,W(v.value&&v.value.computerRooms[0].lyqCount||0),1),Ue]),a("div",Oe,[a("p",We,W(v.value&&v.value.computerRooms[0].zgCount||0),1),ze])])]),Ye]),je,a("div",Ge,[a("div",Ne,[a("div",Xe,[a("div",Je,[a("p",Ke,W(v.value&&v.value.computerRooms[1].fwqCount||0),1),He]),a("div",Ve,[a("p",qe,W(v.value&&v.value.computerRooms[1].areaCount||0),1),Ze]),a("div",$e,[a("p",ta,W(v.value&&v.value.computerRooms[1].jhjCount||0),1),ea])]),a("div",aa,[a("div",oa,[a("p",ia,W(v.value&&v.value.computerRooms[1].lyqCount||0),1),ra]),a("div",na,[a("p",sa,W(v.value&&v.value.computerRooms[1].zgCount||0),1),la])])]),ca])])])]),a("div",da,[a("div",fa,[ua,ha,a("div",{ref_key:"chart3Ref",ref:b,class:"flex-1"},null,512)]),a("div",va,[ga,ma,a("div",{ref_key:"chart4Ref",ref:T,class:"flex-1"},null,512)])])]),a("div",wa,[a("div",pa,[a("div",Aa,[Ca,a("div",xa,[_a,ht(Z,{modelValue:r.value,"onUpdate:modelValue":Q[1]||(Q[1]=E=>r.value=E),type:"year",placeholder:"",class:"my-year-pick","value-format":"YYYY",clearable:!1,onChange:p},null,8,["modelValue"])]),a("div",ya,[a("div",{ref_key:"chart1Ref",ref:x,class:"chart-div h-full"},null,512)])])]),a("div",Ia,[a("div",Ma,[ba,a("div",Ea,[Ba,a("div",Sa,[ht(lt,{modelValue:z.value,"onUpdate:modelValue":Q[2]||(Q[2]=E=>z.value=E),class:"screen-radio-btn left-btn",onChange:q},{default:wt(()=>[ht(U,{label:"CPU",value:"CPU"},{default:wt(()=>[Mt("CPU")]),_:1}),ht(U,{label:"MEMORY",value:"MEMORY"},{default:wt(()=>[Mt("内存")]),_:1}),ht(U,{label:"DISK",value:"DISK"},{default:wt(()=>[Mt("存储")]),_:1})]),_:1},8,["modelValue"])])]),a("div",ka,[a("div",Ta,[a("div",Fa,[Ra,a("p",Da,W(z.value==="CPU"?"CPU数量(核)":z.value==="MEMORY"?"内存大小(G)":"存储大小(G)"),1),a("p",La,W(z.value==="CPU"?"CPU":z.value==="MEMORY"?"内存":"存储")+"使用率",1)]),a("div",Pa,[X.value&&X.value.length?(vt(),mt("div",{key:0,ref_key:"scrollRef1",ref:H,class:"absolute w-full h-full overflow-y-auto",onMouseover:st,onMouseleave:nt},[a("div",{ref_key:"innerDivRef1",ref:tt},[(vt(!0),mt($t,null,te(X.value,(E,ot)=>(vt(),mt("div",{key:ot,class:ae(`list list${ot+1}`)},[a("p",{class:"name truncate",title:E.orgName},W(E&&E.orgName),9,Qa),a("p",Ua,W(z.value==="CPU"?E&&E.cpuCores:z.value==="MEMORY"?E&&E.memoryTotal:E&&E.diskTotal),1),a("p",Oa,W(z.value==="CPU"?E&&E.cpuUsedRate:z.value==="MEMORY"?E&&E.memoryUsedRate:E&&E.diskUsedRate)+"%",1)],2))),128))],512)],544)):(vt(),ee(ct,{key:1,"text-style":"color:#ffffff;opacity:1","box-style":"padding:0"}))])])])])])])])])}}});export{Ka as default};