HEX
Server: nginx/1.28.3
System: Linux ip-172-31-12-242 6.17.0-1007-aws #7~24.04.1-Ubuntu SMP Thu Jan 22 21:04:49 UTC 2026 x86_64
User: root (0)
PHP: 7.4.33
Disabled: passthru,exec,system,putenv,chroot,chgrp,chown,shell_exec,popen,proc_open,pcntl_exec,ini_alter,ini_restore,dl,openlog,syslog,readlink,symlink,popepassthru,pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,imap_open,apache_setenv
Upload Files
File: /www/server/panel/BTPanel/static/js/index237.js
import{k as B,a2 as v,R as k,d3 as N,eY as M,dE as w}from"./utils-lib.js?v=1777008528";import{_ as P}from"./index118.js?v=1777008528";import{c as V,r as m,o as O,j as d,k as f,q as r,F as q,B as G,L as E,s as C,p as u,e as c,C as D,v as R,n as H,x as K,az as Y}from"./base-lib.js?v=1777008528";import{b1 as $}from"./firewall.js?v=1777008528";import{b as J,m as Q,o as U}from"./useMethod7.js?v=1777008528";import"./__commonjsHelpers__.js?v=1777008528";import"./index3.js?v=1777008528";import"./index119.js?v=1777008528";import"./index116.js?v=1777008528";import"./useStore8.js?v=1777008528";const X={class:"flex"},Z={class:"w-[60%] mr-4"},ee={class:"flex ml-[0.2rem] mb-[1.6rem]"},te={class:"flex items-center mb-[1.2rem] text-tertiary"},se={class:"border-1 border-lighter rounded-base p-[1.6rem]"},oe={key:0,class:"w-full h-[32rem] flex items-center justify-center"},re={class:"border-1 border-lighter rounded-base p-[1.6rem] mt-[1.6rem]"},ae={key:0,class:"w-full h-[32rem] flex items-center justify-center"},ne={class:"flex-1 ml-4"},ie={class:"border-1 border-lighter rounded-base p-[1.6rem]"},le={key:0,class:"w-full h-[24rem]"},ce={key:1,class:"w-full h-[24rem] flex items-center justify-center"},de={class:"border-1 border-lighter rounded-base p-[1.6rem] mt-[1.6rem]"},ue={class:"w-full h-[24rem]"},me={class:"border-1 border-lighter rounded-base p-[1.6rem] mt-[1.6rem]"},fe={key:0,class:"w-full h-[24rem]"},pe={key:1,class:"w-full h-[24rem] flex items-center justify-center"},De=V({__name:"index",setup(_e){const L=m(),S=m(),I=m(),y=m(!1),p=m({}),h=m([]),_=m([]),b=m([]),g=m(),x=m(),T=(e={})=>{let o=[],n=[],i=[];for(var a=0;a<e.length&&!(a>=5);a++){var l=e[a];n.push(l.site_name),o.push(l.end_time-l.start_time),i.push(l.scans)}return{legend:{left:"left",data:["耗时","检测页面"]},grid:{left:45,top:50,right:15,bottom:20,backgroundColor:"#888"},tooltip:{trigger:"axis",axisPointer:{type:"cross"},formatter:function(t){return t.length?"检测网站: "+t[0].name+(t.length===2?"</br>耗时: "+w(t[0].value)+"</br>检测页面数量: "+t[1].value:t[0].seriesIndex?"</br>检测页面数量: "+t[0].value:"</br>耗时: "+w(t[0].value)):""}},xAxis:{type:"category",data:n,scale:!0,triggerEvent:!0,axisLabel:{formatter:function(t){return t.length>6?t.substr(0,6)+"...":t}}},yAxis:{type:"value"},series:[{type:"bar",name:"耗时",barWidth:24,data:o,itemStyle:{color:"#fcc858"}},{type:"bar",name:"检测页面",barWidth:24,data:i,itemStyle:{color:"#8dcf6e"}}]}},W=(e={})=>{var a,l;let o=(a=Object.keys(e))==null?void 0:a.map(s=>s).sort((s,t)=>new Date(s).getTime()<new Date(t).getTime()?-1:1),n=(l=Object.values(e))==null?void 0:l.map(s=>s);return{grid:{left:45,right:15,top:50,bottom:20,backgroundColor:"#888"},tooltip:{trigger:"axis",axisPointer:{type:"cross"},formatter:function(s){var t=s[0].name+"</br>风险次数: "+Number(s[0].value||0);return t}},xAxis:{type:"category",boundaryGap:!1,data:o,axisLabel:{fontSize:10,color:"#666",formatter:s=>k(new Date(s).getTime()/1e3,"MM-dd")}},axisLabel:{fontSize:10,color:"#666"},axisLine:{show:!1},axisTick:{show:!1},yAxis:{type:"value",splitNumber:5,name:"风险次数/次",min:0,axisLine:{show:!1},axisTick:{show:!1},axisLabel:{fontSize:10,color:"#666"}},series:[{type:"line",smooth:.6,data:n,areaStyle:{normal:{}},itemStyle:{normal:{color:"#FF8585",lineStyle:{color:"#FF8585",type:"solid"}}}}]}},j=(e={})=>{for(var o=[],n=[],i=0;i<e.length&&!(i>=6);i++){var a=e[i];o.push(a.words),n.push(a.count)}return{grid:{top:10,left:60,right:15,bottom:20,backgroundColor:"#888"},tooltip:{trigger:"axis",axisPointer:{type:"cross"},formatter:s=>"敏感词: "+s[0].name+"</br>次数: "+s[0].value},xAxis:{type:"value"},yAxis:{type:"category",data:o,scale:!0,triggerEvent:!0,axisLabel:{formatter:function(s){var t="";return s.length>4?(t=s.substr(0,4)+"...",t):s}}},series:[{type:"bar",data:n,barWidth:20,itemStyle:{color:function(s){var t=["#ffa688","#ffc87d","#98caa5","#acce9b","#cad48f"];return t[s.dataIndex]}}}]}},A=async()=>{var o,n;const e=await B({loading:"正在获取数据,请稍后...",request:$()});p.value=e.data,_.value=v((o=e==null?void 0:e.data)==null?void 0:o.site_info,"array",[]),b.value=v((n=e==null?void 0:e.data)==null?void 0:n.risk_info,"array",[]),h.value=[{title:"监控网站",value:p.value.site_count},{title:"总风险次数",value:p.value.risk_count},{title:"今日风险次数",value:p.value.day_risk},{title:"今日巡检次数",value:p.value.today_count}],H(()=>{var i,a;g.value=e==null?void 0:e.data["7day_risk"],y.value=!((i=e==null?void 0:e.data)!=null&&i.sensitive_word.length),x.value=(a=e==null?void 0:e.data)==null?void 0:a.sensitive_word})},F=[{label:"巡检时间",prop:"time",render:e=>{const o=v(e.time,"number",0);return c("span",null,[k(o)])}},{label:"检测域名",prop:"site_name"},{label:"检测方式",prop:"method",render:e=>Q[e.method]},{label:"检测页面数",prop:"scans"},{label:"巡检结果",render:e=>[e.risks===0?c("span",{class:"text-primary"},[K("无风险 ")]):c("span",{class:"bt-link !text-danger",onClick:()=>U(e)},[e.risks])]}],z=J();return O(A),(e,o)=>{const n=Y,i=N,a=P,l=M;return d(),f("div",X,[r("div",Z,[r("div",ee,[(d(!0),f(q,null,G(u(h),(s,t)=>(d(),f("div",{key:t,class:E("block-bg "+(t>0?"ml-[5rem]":""))},[r("div",te,[r("span",null,C(s.title),1)]),r("div",{class:E("font-bold text-extraLarge leading-none "+(t!==0&&t!==3&&s.value>0?"text-warning":"text-secondary"))},C(s.value),3)],2))),128))]),r("div",se,[o[0]||(o[0]=r("div",{class:"card_title flex items-center text-secondary text-base mb-[1.2rem]"},"网站内容检测",-1)),u(_).length===0?(d(),f("div",oe,[c(n,{description:"网站内容检测为空"})])):(d(),D(a,{key:1},{content:R(()=>[c(i,{"max-height":"320",column:F,data:u(_)},null,8,["data"])]),_:1}))]),r("div",re,[o[1]||(o[1]=r("div",{class:"card_title flex items-center text-secondary text-base mb-[1.2rem]"},"风险动态",-1)),u(b).length===0?(d(),f("div",ae,[c(n,{description:"风险动态为空"})])):(d(),D(a,{key:1},{content:R(()=>[c(i,{"max-height":"320",column:u(z),data:u(b)},null,8,["column","data"])]),_:1}))])]),r("div",ne,[r("div",ie,[o[2]||(o[2]=r("div",{class:"card_title flex items-center text-secondary text-base mb-[1.2rem]"},"风险历史",-1)),u(_).length?(d(),f("div",le,[c(l,{ref_key:"riskEchartRef",ref:L,options:T(u(_))},null,8,["options"])])):(d(),f("div",ce,[c(n,{description:"风险历史数据为空"})]))]),r("div",de,[o[3]||(o[3]=r("div",{class:"card_title flex items-center text-secondary text-base mb-[1.2rem]"},"近7日巡检情况",-1)),r("div",ue,[c(l,{ref_key:"dayRiskEchartRef",ref:S,options:W(u(g))},null,8,["options"])])]),r("div",me,[o[4]||(o[4]=r("div",{class:"card_title flex items-center text-secondary text-base mb-[1.2rem]"},"敏感词排行",-1)),u(y)?(d(),f("div",pe,[c(n,{description:"敏感词排行数据为空"})])):(d(),f("div",fe,[c(l,{ref_key:"sensitiveWordEchartRef",ref:I,options:j(u(x))},null,8,["options"])]))])])])}}});export{De as default};