|
@@ -1,459 +1,313 @@
|
|
|
<!DOCTYPE html>
|
|
|
<html lang="zh" xmlns:th="http://www.thymeleaf.org" xmlns:shiro="http://www.pollix.at/thymeleaf/shiro">
|
|
|
<head>
|
|
|
- <th:block th:include="include :: header('可视化')"/>
|
|
|
-</head>
|
|
|
-<head>
|
|
|
<meta charset="utf-8">
|
|
|
<title>通化市接口中台可视化中心</title>
|
|
|
- <meta charset="UTF-8">
|
|
|
- <meta name="viewport" content="width=device-width, initial-scale=1.0">
|
|
|
- <meta http-equiv="X-UA-Compatible" content="ie=edge">
|
|
|
- <link rel="stylesheet" href="/visualization/css/index.css" th:href="@{/visualization/css/index.css}">
|
|
|
- <link rel="stylesheet" href="/visualization/css/reset.css" th:href="@{/visualization/css/reset.css}">
|
|
|
- <script type="text/javascript" th:src="@{/visualization/js/jquery.js}"></script>
|
|
|
+ <link th:href="@{/visualization/css/th_yj.css}" rel="stylesheet"/>
|
|
|
+ <script type="text/javascript" th:src="@{/visualization/js/jquery-3.3.1.min.js}"></script>
|
|
|
+ <script type="text/javascript" th:src="@{/visualization/js/echarts.min.js}"></script>
|
|
|
+ <script type="text/javascript" th:src="@{/visualization/js/jquery.min.js}"></script>
|
|
|
+ <script type="text/javascript" th:src="@{/visualization/js/jquery.ba-resize.min.js}"></script>
|
|
|
+ <script type="text/javascript" th:src="@{/visualization/js/th_jk.js}"></script>
|
|
|
</head>
|
|
|
-<script type="text/javascript" th:src="@{/visualization/js/echarts.min.js}"></script>
|
|
|
-<script language="JavaScript" th:src="@{/visualization/js/js.js}"></script>
|
|
|
-<script language="JavaScript" th:src="@{/visualization/js/visualization_websocket.js}"></script>
|
|
|
<body>
|
|
|
-<div class="th-container">
|
|
|
- <!-- 导航开始 -->
|
|
|
- <div class="th-header">
|
|
|
- <div class="th-title">通化市接口中台可视化中心</div>
|
|
|
- <div class="th-weather"><img th:src="@{/visualization/images/th-clock-icon.png}"><span id="showTime"></span>
|
|
|
- </div>
|
|
|
- <script>
|
|
|
- var t = null;
|
|
|
-
|
|
|
-
|
|
|
- function time() {
|
|
|
- clearTimeout(t);
|
|
|
- dt = new Date();
|
|
|
- var y = dt.getFullYear();
|
|
|
- var mt = buqi(dt.getMonth() + 1);
|
|
|
- var day = buqi(dt.getDate());
|
|
|
- var h = buqi(dt.getHours());
|
|
|
- var m = buqi(dt.getMinutes());
|
|
|
- var s = buqi(dt.getSeconds());
|
|
|
- document.getElementById("showTime").innerHTML = y + "-" + mt + "-" + day + " " + h + ":" + m + ":" + s + "";
|
|
|
-
|
|
|
- getmyd_sz[0]++;
|
|
|
- getmyd_sz[3]++;
|
|
|
- getmyd_sz[4]+=2;
|
|
|
- // init_bmjkdypm()
|
|
|
- // t = setTimeout(time, 1000);
|
|
|
- }
|
|
|
- function buqi(a) {
|
|
|
- if(a <10){
|
|
|
- return "0"+a;
|
|
|
- }else{
|
|
|
- return a;
|
|
|
- }
|
|
|
- }
|
|
|
- </script>
|
|
|
- <div class="th-top-btn-row" style="display: flex; justify-content: center">
|
|
|
- <div class="th-top-btn">
|
|
|
- <a href="../index">管理端</a>
|
|
|
- </div>
|
|
|
- <div class="th-top-btn">
|
|
|
- <a href="">可视化</a>
|
|
|
- </div>
|
|
|
- </div>
|
|
|
+<div id="particles-js">
|
|
|
+ <canvas id="canvas" style="width: 100%; height: 100%;"></canvas>
|
|
|
+</div>
|
|
|
+<div class="header clearfix">
|
|
|
+ <div class="time fl">
|
|
|
+ <span class="nyr">2022-08-17</span> <span class="sfm">09:35:57</span>
|
|
|
</div>
|
|
|
- <!-- 导航结束 -->
|
|
|
- <!-- 内容开始 -->
|
|
|
- <div class="th-content">
|
|
|
-
|
|
|
- <!-- 部门接口调用排名B -->
|
|
|
- <div class="th-left">
|
|
|
- <div class="th-left-con">
|
|
|
- <div class="th-left-title">部门接口调用排名</div>
|
|
|
- <div class="th-left-ph" id="phb"></div>
|
|
|
+ <h1 class="logo"><img th:src="@{/visualization/images/thqzj_logo.png}"/></h1>
|
|
|
+ <div class="header_nav fr">
|
|
|
+ <a class="on">大数据</a>
|
|
|
+ <a>接入部门</a>
|
|
|
+ <a>接口故障<i>(0)</i></a>
|
|
|
+ </div>
|
|
|
+</div>
|
|
|
+<div class="content clearfix">
|
|
|
+ <div class="fl con_left1">
|
|
|
+ <div class="con_sk con_bg clearfix">
|
|
|
+ <i class="con_x"><img th:src="@{/visualization/images/thqzj_con_x.png}"/></i>
|
|
|
+ <div class="data1 data_left">
|
|
|
+ <div class="qiu">
|
|
|
+ <p>0个</p>
|
|
|
+ </div>
|
|
|
+ <span>市归集接口数</span>
|
|
|
</div>
|
|
|
- </div>
|
|
|
- <!-- 部门接口调用排名E -->
|
|
|
-
|
|
|
- <!-- 接口地图展示B -->
|
|
|
- <div class="th-mid-map">
|
|
|
- <h1>全市数据共享情况</h1>
|
|
|
- <div class="th-mid-map-con">
|
|
|
- <div class="th-mid-sjk">
|
|
|
- <h2>省共享平台</h2>
|
|
|
- <h6>上报总数: <span id="jkzt_jkzs">0</span></h6>
|
|
|
+ <div class="data1">
|
|
|
+ <div class="qiu">
|
|
|
+ <p>0个</p>
|
|
|
</div>
|
|
|
- <div class="th-mid-shjk">
|
|
|
- <h2>市接口中台</h2>
|
|
|
- <h6>归集接口: <span id="jkzt_gj">0</span></h6>
|
|
|
- <h6>共享接口: <span id="jkzt_gx">0</span></h6>
|
|
|
- <h6>数据总量: <span id="jkzt_sjgs">0</span></h6>
|
|
|
+ <span>市共享接口数</span>
|
|
|
+ </div>
|
|
|
+ <div class="data1">
|
|
|
+ <div class="qiu">
|
|
|
+ <p>0个</p>
|
|
|
</div>
|
|
|
-
|
|
|
- <div class="th-mid-dw-con" id="qssjgxqk_div">
|
|
|
- <div class="th-mid-dw th-dw-1">
|
|
|
- <h2>住建局</h2>
|
|
|
- <h6>归集接口: <span>0</span></h6>
|
|
|
- <h6>共享接口: <span>0</span></h6>
|
|
|
- </div>
|
|
|
- <div class="th-mid-dw th-dw-2">
|
|
|
- <h2>住建局</h2>
|
|
|
- <h6>归集接口: <span>0</span></h6>
|
|
|
- <h6>共享接口: <span>0</span></h6>
|
|
|
- </div>
|
|
|
- <div class="th-mid-dw th-dw-3">
|
|
|
- <h2>住建局</h2>
|
|
|
- <h6>归集接口: <span>0</span></h6>
|
|
|
- <h6>共享接口: <span>0</span></h6>
|
|
|
- </div>
|
|
|
- <div class="th-mid-dw th-dw-4">
|
|
|
- <h2>住建局</h2>
|
|
|
- <h6>归集接口: <span>0</span></h6>
|
|
|
- <h6>共享接口: <span>0</span></h6>
|
|
|
- </div>
|
|
|
- <div class="th-mid-dw th-dw-5">
|
|
|
- <h2>住建局</h2>
|
|
|
- <h6>归集接口: <span>0</span></h6>
|
|
|
- <h6>共享接口: <span>0</span></h6>
|
|
|
- </div>
|
|
|
- <div class="th-mid-dw th-dw-6">
|
|
|
- <h2>住建局</h2>
|
|
|
- <h6>归集接口: <span>0</span></h6>
|
|
|
- <h6>共享接口: <span>0</span></h6>
|
|
|
- </div>
|
|
|
- <div class="th-mid-dw th-dw-7">
|
|
|
- <h2>住建局</h2>
|
|
|
- <h6>归集接口: <span>0</span></h6>
|
|
|
- <h6>共享接口: <span>0</span></h6>
|
|
|
- </div>
|
|
|
+ <span>省归集接口数</span>
|
|
|
+ </div>
|
|
|
+ <div class="data1">
|
|
|
+ <div class="qiu">
|
|
|
+ <p>0个</p>
|
|
|
</div>
|
|
|
-
|
|
|
-
|
|
|
+ <span>省共享接口数</span>
|
|
|
</div>
|
|
|
</div>
|
|
|
- <!-- 接口地图展示E -->
|
|
|
+ <div class="jkzb con_bg">
|
|
|
+ <i class="con_x"><img th:src="@{/visualization/images/thqzj_con_x.png}"/></i>
|
|
|
|
|
|
- <!-- 右侧内容B -->
|
|
|
- <div class="th-right-con">
|
|
|
- <div class="th-right-con-1">
|
|
|
- <ul>
|
|
|
- <li>
|
|
|
- <img th:src="@{/visualization/images/th-right1.png}">
|
|
|
- <div class="row-left">
|
|
|
- <span id="tj_interface_total">0</span>
|
|
|
- <h1>接口总数</h1>
|
|
|
- </div>
|
|
|
- </li>
|
|
|
- <li>
|
|
|
- <img th:src="@{/visualization/images/th-right2.png}">
|
|
|
- <div class="row-left">
|
|
|
- <span id="tj_dypc">0</span>
|
|
|
- <h1>调用频次</h1>
|
|
|
- </div>
|
|
|
- </li>
|
|
|
- <li>
|
|
|
- <img th:src="@{/visualization/images/th-right3.png}">
|
|
|
- <div class="row-left">
|
|
|
- <span id="tj_gjpc">0</span>
|
|
|
- <h1>归集频次</h1>
|
|
|
- </div>
|
|
|
- </li>
|
|
|
- <li>
|
|
|
- <img th:src="@{/visualization/images/th-right4.png}">
|
|
|
- <div class="row-left">
|
|
|
- <span id="tj_gxpc">0</span>
|
|
|
- <h1>共享频次</h1>
|
|
|
- </div>
|
|
|
- </li>
|
|
|
- <li>
|
|
|
- <img th:src="@{/visualization/images/th-right5.png}">
|
|
|
- <div class="row-left">
|
|
|
- <span id="tj_jrbm">0</span>
|
|
|
- <h1>接入部门</h1>
|
|
|
- </div>
|
|
|
- </li>
|
|
|
- <li>
|
|
|
- <img th:src="@{/visualization/images/th-right6.png}">
|
|
|
- <div class="row-left">
|
|
|
- <span id="tj_jkgz">0</span>
|
|
|
- <h1>接口故障</h1>
|
|
|
- </div>
|
|
|
- </li>
|
|
|
- </ul>
|
|
|
+ <div class="con_tit clearfix">
|
|
|
+ <div class="fl div_tit">接口占比</div>
|
|
|
+ <div class="tit_date"><i></i>2022</div>
|
|
|
</div>
|
|
|
- <div class="th-right-con-2row">
|
|
|
- <div class="th-right-con-2 mg-r1">
|
|
|
- <h4>接口占比</h4>
|
|
|
- <div id="jkzb" style="width: 280px; height: 200px;"></div>
|
|
|
+ <div id="jkzb"></div>
|
|
|
+ <div class="jkzb_txt">
|
|
|
+ <div class="sgj jkzb_list">
|
|
|
+ <h3><i></i>市归集</h3>
|
|
|
+ <p><span>0</span><span>0%</span></p>
|
|
|
+ </div>
|
|
|
+ <div class="sgx jkzb_list">
|
|
|
+ <h3><i></i>市共享</h3>
|
|
|
+ <p><span>0</span><span>0%</span></p>
|
|
|
</div>
|
|
|
- <div class="th-right-con-2 mg-r1">
|
|
|
- <h4>接口使用</h4>
|
|
|
- <div id="jksy" style="width: 280px; height: 200px;"></div>
|
|
|
+ <div class="sgj2 jkzb_list">
|
|
|
+ <h3><i></i>省归集</h3>
|
|
|
+ <p><span>0</span><span>0%</span></p>
|
|
|
</div>
|
|
|
- <div class="th-right-con-2">
|
|
|
- <h4>接入部门</h4>
|
|
|
- <div id="jrbm" style="width: 280px; height: 200px;"></div>
|
|
|
+ <div class="sgx jkzb_list">
|
|
|
+ <h3><i></i>省共享</h3>
|
|
|
+ <p><span>0</span><span>0%</span></p>
|
|
|
</div>
|
|
|
</div>
|
|
|
- <div class="th-right-con-3row">
|
|
|
- <div class="th-right-con-3 mg-r2">
|
|
|
- <h4>市主要归集接口</h4>
|
|
|
- <div id="szygj" style="width: 400px; height: 200px;"></div>
|
|
|
+
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ <div id="map_div" class="fl con_left2">
|
|
|
+ <img th:src="@{/visualization/images/map.png}" class="map_img"/>
|
|
|
+ <div class="map_id map_id1 mp_show">
|
|
|
+ <div class="map_sj">
|
|
|
+ <i class="map_wz4"></i>
|
|
|
+ <i class="map_wz3"></i>
|
|
|
+ <i class="map_wz2"></i>
|
|
|
+ <i class="map_wz1"></i>
|
|
|
+ </div>
|
|
|
+ <div class="map_dx">
|
|
|
+ <div class="map_txt">
|
|
|
+ <h1>通化市1XXX部门</h1>
|
|
|
+ <p>联系人:柳爽</p>
|
|
|
+ <p>电话:15636365656</p>
|
|
|
+ <p>地址:通化市童话街璐璐大厦2256</p>
|
|
|
</div>
|
|
|
- <div class="th-right-con-3">
|
|
|
- <h4>市主要共享接口</h4>
|
|
|
- <div id="szygx" style="width: 400px; height: 200px;"></div>
|
|
|
+ <i class="map_d"></i>
|
|
|
+ <i class="map_x"></i>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ <div class="map_id map_id2">
|
|
|
+ <div class="map_sj">
|
|
|
+ <i class="map_wz4"></i>
|
|
|
+ <i class="map_wz3"></i>
|
|
|
+ <i class="map_wz2"></i>
|
|
|
+ <i class="map_wz1"></i>
|
|
|
+ </div>
|
|
|
+ <div class="map_dx">
|
|
|
+ <div class="map_txt">
|
|
|
+ <h1>通化市2XXX部门</h1>
|
|
|
+ <p>联系人:柳爽</p>
|
|
|
+ <p>电话:15636365656</p>
|
|
|
+ <p>地址:通化市童话街璐璐大厦2256</p>
|
|
|
</div>
|
|
|
+ <i class="map_d"></i>
|
|
|
+ <i class="map_x"></i>
|
|
|
</div>
|
|
|
- <div class="th-right-con-4">
|
|
|
- <!-- <h4>接口使用频次</h4>
|
|
|
- <div id="jksypc" style="width: 800px; height: 280px;"></div> -->
|
|
|
- <!-- HTML页面布局 -->
|
|
|
- <div id="tab">
|
|
|
- <ul>
|
|
|
- <li class="on">接口使用频次</li>
|
|
|
- </ul>
|
|
|
- <div id="firstPage" class="show">
|
|
|
- <div id="jksypc" style="width: 800px; height: 220px;"></div>
|
|
|
- </div>
|
|
|
- <div id="secondPage" class="hide">
|
|
|
- <a href="#">40平出租屋大改造 美少女的混搭小窝</a><br>
|
|
|
- <a href="#">经典清新简欧爱家 90平老房焕发新生</a><br>
|
|
|
-
|
|
|
- </div>
|
|
|
- <div id="thirdPage" class="hide">
|
|
|
- <a href="#">通州豪华3居260万 二环稀缺2居250w甩</a><br>
|
|
|
- <a href="#">西3环通透2居290万 130万2居限量抢购</a><br>
|
|
|
-
|
|
|
- </div>
|
|
|
+ </div>
|
|
|
+ <div class="map_id map_id3">
|
|
|
+ <div class="map_sj">
|
|
|
+ <i class="map_wz4"></i>
|
|
|
+ <i class="map_wz3"></i>
|
|
|
+ <i class="map_wz2"></i>
|
|
|
+ <i class="map_wz1"></i>
|
|
|
+ </div>
|
|
|
+ <div class="map_dx">
|
|
|
+ <div class="map_txt">
|
|
|
+ <h1>通化市3XXX部门</h1>
|
|
|
+ <p>联系人:柳爽</p>
|
|
|
+ <p>电话:15636365656</p>
|
|
|
+ <p>地址:通化市童话街璐璐大厦2256</p>
|
|
|
+ </div>
|
|
|
+ <i class="map_d"></i>
|
|
|
+ <i class="map_x"></i>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ <div class="map_id map_id4">
|
|
|
+ <div class="map_sj">
|
|
|
+ <i class="map_wz4"></i>
|
|
|
+ <i class="map_wz3"></i>
|
|
|
+ <i class="map_wz2"></i>
|
|
|
+ <i class="map_wz1"></i>
|
|
|
+ </div>
|
|
|
+ <div class="map_dx">
|
|
|
+ <div class="map_txt">
|
|
|
+ <h1>通化市4XXX部门</h1>
|
|
|
+ <p>联系人:柳爽</p>
|
|
|
+ <p>电话:15636365656</p>
|
|
|
+ <p>地址:通化市童话街璐璐大厦2256</p>
|
|
|
</div>
|
|
|
+ <i class="map_d"></i>
|
|
|
+ <i class="map_x"></i>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
|
|
|
+ </div>
|
|
|
+ <div class="fr con_right">
|
|
|
+ <div class="jkgj con_bg">
|
|
|
+ <i class="con_x"><img th:src="@{/visualization/images/thqzj_con_x.png}"></i>
|
|
|
+ <div class="con_tit clearfix">
|
|
|
+ <div class="fl div_tit">归集数据/接口排名</div>
|
|
|
+ <div class="tab_tit"><span class="on" id="shpm">数据排名</span><span id="jkpm">接口排名</span></div>
|
|
|
</div>
|
|
|
+ <div class="tab_div1">
|
|
|
+ <div id="jkgj" class="jkgj_tab active" style="display: block;"></div>
|
|
|
+ <div id="jkgj2" class="jkgj_tab" style="display: none;"></div>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+
|
|
|
+ </div>
|
|
|
+ <div class="clearfix"></div>
|
|
|
+ <div class="con_bottom1 con_bg fl">
|
|
|
+ <i class="con_x"><img th:src="@{/visualization/images/thqzj_con_x.png}"></i>
|
|
|
+ <div class="con_tit clearfix">
|
|
|
+ <div class="fl div_tit2">省、市接口调用频次(TOP20)</div>
|
|
|
+ <div class="tab_tit2"><span class="on" id="shjk">省接口调用频次</span><span id="sjk">市接口调用频次</span></div>
|
|
|
+ </div>
|
|
|
+ <div class="tab_div2 clearfix" style="display: block;">
|
|
|
+ <div id="shjk_div1" class=" fl"></div>
|
|
|
+ <div id="shjk_div2" class=" fl"></div>
|
|
|
</div>
|
|
|
- <!-- 右侧内容E -->
|
|
|
+ <div class="tab_div2 clearfix" style="display: none;">
|
|
|
+ <div id="sjk_div1" class=" fl"></div>
|
|
|
+ <div id="sjk_div2" class=" fl"></div>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ <div class="con_bottom2 con_bg fl">
|
|
|
+ <i class="con_x"><img th:src="@{/visualization/images/thqzj_con_x.png}"></i>
|
|
|
+ <div class="con_tit clearfix">
|
|
|
+ <div class="fl div_tit2">归集数据分析</div>
|
|
|
+ <div class="tit_date"><i></i>2021-01-01 至 2022-08-08</div>
|
|
|
+ </div>
|
|
|
+ <div id="gjsj"></div>
|
|
|
</div>
|
|
|
- <!-- 内容结束 -->
|
|
|
</div>
|
|
|
-<script type="text/javascript" src="../visualization/allcharts/th-echart1.js"
|
|
|
- th:src="@{/visualization/allcharts/th-echart1.js}" rel="stylesheet"></script>
|
|
|
-<script type="text/javascript" src="../visualization/allcharts/eventPieTh.js"
|
|
|
- th:src="@{/visualization/allcharts/eventPieTh.js}" rel="stylesheet"></script>
|
|
|
-<script type="text/javascript" src="../visualization/allcharts/eventPieTh2.js"
|
|
|
- th:src="@{/visualization/allcharts/eventPieTh2.js}" rel="stylesheet"></script>
|
|
|
-<script type="text/javascript" src="../visualization/allcharts/humanTh.js"
|
|
|
- th:src="@{/visualization/allcharts/humanTh.js}" rel="stylesheet"></script>
|
|
|
-<script type="text/javascript" src="../visualization/allcharts/jkTh.js" th:src="@{/visualization/allcharts/jkTh.js}"
|
|
|
- rel="stylesheet"></script>
|
|
|
-<script type="text/javascript" src="../visualization/allcharts/jkTh2.js" th:src="@{/visualization/allcharts/jkTh2.js}"
|
|
|
- rel="stylesheet"></script>
|
|
|
-<script type="text/javascript" src="../visualization/allcharts/jkpcTh.js" th:src="@{/visualization/allcharts/jkpcTh.js}"
|
|
|
- rel="stylesheet"></script>
|
|
|
-
|
|
|
|
|
|
+<!-- 弹框 开始-->
|
|
|
+<!--<iframe id="tk_iframe" th:src="@{/VisualizationController/edition2/tk_iframe}"></iframe>-->
|
|
|
+<!-- 弹框 结束-->
|
|
|
<script>
|
|
|
- window.onload = function () {
|
|
|
- getVisualization();
|
|
|
- var myTab = document.getElementById("tab"); //整个div
|
|
|
- var myUl = myTab.getElementsByTagName("ul")[0]; //一个节点
|
|
|
- var myLi = myUl.getElementsByTagName("li"); //数组
|
|
|
- var myDiv = myTab.getElementsByTagName("div"); //数组
|
|
|
-
|
|
|
- for (var i = 0; i < myLi.length; i++) {
|
|
|
- myLi[i].index = i;
|
|
|
- myLi[i].onclick = function () {
|
|
|
- for (var j = 0; j < myLi.length; j++) {
|
|
|
- myLi[j].className = "off";
|
|
|
- myDiv[j].className = "hide";
|
|
|
- }
|
|
|
- this.className = "on";
|
|
|
- myDiv[this.index].className = "show";
|
|
|
- }
|
|
|
+ //宇宙特效
|
|
|
+ "use strict";
|
|
|
+ var canvas = document.getElementById('canvas'),
|
|
|
+ ctx = canvas.getContext('2d'),
|
|
|
+ w = canvas.width = window.innerWidth,
|
|
|
+ h = canvas.height = window.innerHeight,
|
|
|
+
|
|
|
+ hue = 217,
|
|
|
+ stars = [],
|
|
|
+ count = 0,
|
|
|
+ maxStars = 1300;//星星数量
|
|
|
+
|
|
|
+ var canvas2 = document.createElement('canvas'),
|
|
|
+ ctx2 = canvas2.getContext('2d');
|
|
|
+ canvas2.width = 100;
|
|
|
+ canvas2.height = 100;
|
|
|
+ var half = canvas2.width / 2,
|
|
|
+ gradient2 = ctx2.createRadialGradient(half, half, 0, half, half, half);
|
|
|
+ gradient2.addColorStop(0.025, '#CCC');
|
|
|
+ gradient2.addColorStop(0.1, 'hsl(' + hue + ', 61%, 33%)');
|
|
|
+ gradient2.addColorStop(0.25, 'hsl(' + hue + ', 64%, 6%)');
|
|
|
+ gradient2.addColorStop(1, 'transparent');
|
|
|
+
|
|
|
+ ctx2.fillStyle = gradient2;
|
|
|
+ ctx2.beginPath();
|
|
|
+ ctx2.arc(half, half, half, 0, Math.PI * 2);
|
|
|
+ ctx2.fill();
|
|
|
+
|
|
|
+ // End cache
|
|
|
+
|
|
|
+ function random(min, max) {
|
|
|
+ if (arguments.length < 2) {
|
|
|
+ max = min;
|
|
|
+ min = 0;
|
|
|
}
|
|
|
- }
|
|
|
- //市数据共享接口-市数据归集接口
|
|
|
- var data_szygjjk_name = [];
|
|
|
- var data_szygjjk_value = [];
|
|
|
- var data_szygxjk_name = [];
|
|
|
- var data_szygxjk_value = [];
|
|
|
- var data_total_name = [];
|
|
|
- var data_total_value = [];
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
- //全市数据共享情况
|
|
|
- function qssjgxqk(d) {
|
|
|
- var qssjgxqk_div = $("#qssjgxqk_div");
|
|
|
- qssjgxqk_div.html("");
|
|
|
-
|
|
|
- data_szygjjk_name =[];
|
|
|
- data_szygxjk_name=[];
|
|
|
- data_szygjjk_value=[];
|
|
|
- data_szygxjk_value=[];
|
|
|
- data_total_name=[];
|
|
|
- data_total_value=[];
|
|
|
- $.each(d.qssjgxqk_List, function (index, data) {
|
|
|
- var div = $("<div>");
|
|
|
- div.addClass("th-mid-dw th-dw-" + (index + 1));
|
|
|
- var h2 = $("<h2>" + data.dept_name + "</h2>");
|
|
|
- var h6_0 = $("<h6>归集接口: <span>" + data.gj_cou + "</span></h6>");
|
|
|
- var h6_1 = $("<h6>共享接口: <span>" + data.gx_cou + "</span></h6>");
|
|
|
- var h6_2 = $("<h6>数据量: <span>" + data.dept_record_count + "</span></h6>");
|
|
|
- div.append(h2);
|
|
|
- div.append(h6_0);
|
|
|
- div.append(h6_1);
|
|
|
- div.append(h6_2);
|
|
|
- qssjgxqk_div.append(div);
|
|
|
- //市主要归集接口 --- 市主要共享接口
|
|
|
|
|
|
- data_szygjjk_name.push(data.dept_name);
|
|
|
- data_szygxjk_name.push(data.dept_name);
|
|
|
- data_szygjjk_value.push(data.gj_cou);
|
|
|
- data_szygxjk_value.push(data.gx_cou);
|
|
|
- data_total_name.push(data.dept_name);
|
|
|
- data_total_value.push(data.total_cou);
|
|
|
- });
|
|
|
- szy_gj(data_szygjjk_name, data_szygjjk_value);
|
|
|
- szy_gx(data_szygxjk_name, data_szygxjk_value);
|
|
|
- jrbm(data_total_name, data_total_value);
|
|
|
- d_zb_guiji = d.zb_guiji;
|
|
|
- d_zb_gongxiang = d.zb_gongxiang
|
|
|
- jkzb(d_zb_guiji, d_zb_gongxiang);
|
|
|
- jksy(d.interface_status_0,d.interface_status_1);
|
|
|
- // $("#jkzt_jkzs").text(d.zb_gongxiang + d.zb_guiji);
|
|
|
- $("#jkzt_jkzs").text(d.GXPT_jkzs);
|
|
|
- $("#jkzt_gj").text(d.zb_guiji);
|
|
|
- $("#jkzt_gx").text(d.zb_gongxiang);
|
|
|
- $("#jkzt_sjgs").text(d.tj_sjkzt_sjgs);
|
|
|
+ if (min > max) {
|
|
|
+ var hold = max;
|
|
|
+ max = min;
|
|
|
+ min = hold;
|
|
|
+ }
|
|
|
|
|
|
- //右侧顶部统计
|
|
|
- $("#tj_interface_total").text(d.tj_interface_total)
|
|
|
- $("#tj_dypc").text(d.tj_dypc)
|
|
|
- $("#tj_gjpc").text(d.tj_gjpc)
|
|
|
- $("#tj_gxpc").text(d.tj_gxpc)
|
|
|
- $("#tj_jrbm").text(d.tj_jrbm)
|
|
|
- $("#tj_jkgz").text(d.tj_jkgz)
|
|
|
-//接口使用频次
|
|
|
- jksypc(d);
|
|
|
+ return Math.floor(Math.random() * (max - min + 1)) + min;
|
|
|
}
|
|
|
|
|
|
-
|
|
|
-</script>
|
|
|
-
|
|
|
-<script>
|
|
|
-
|
|
|
- var fuck = true;
|
|
|
-
|
|
|
- function getVisualization() {
|
|
|
- $.ajax({
|
|
|
- url: '/MainPageController/getVisualization',
|
|
|
- method: 'POST',
|
|
|
- success: getVisualization_Success
|
|
|
- })
|
|
|
+ function maxOrbit(x, y) {
|
|
|
+ var max = Math.max(x, y),
|
|
|
+ diameter = Math.round(Math.sqrt(max * max + max * max));
|
|
|
+ return diameter / 2;
|
|
|
+ //星星移动范围,值越大范围越小,
|
|
|
}
|
|
|
|
|
|
- var phnum = [];//排行数
|
|
|
- var getmydmc = [];//数据点名称
|
|
|
- var getmyd_sz = [];//接口数值
|
|
|
- function getVisualization_Success(d) {
|
|
|
- console.log("##########");
|
|
|
- // console.log(d.interfaceCallCount_List)
|
|
|
- phnum = [];
|
|
|
- getmydmc =[];
|
|
|
- getmyd_sz =[];
|
|
|
- $.each(d.interfaceCallCount_List, function (index, data) {
|
|
|
- phnum.push((index + 1) + " ")
|
|
|
- getmydmc.push(data.dept_name)
|
|
|
- getmyd_sz.push(data.cou)
|
|
|
- });
|
|
|
- // console.log("1:",phnum)
|
|
|
- // console.log("2:",getmydmc)
|
|
|
- // console.log("3:",getmyd_sz)
|
|
|
-
|
|
|
- //最左侧,top部门接口调用排名
|
|
|
+ var Star = function () {
|
|
|
|
|
|
- init_bmjkdypm();
|
|
|
- //中间 全市数据共享情况
|
|
|
- qssjgxqk(d);
|
|
|
-
|
|
|
- //最后启动定时
|
|
|
- // t = setTimeout(time, 1000);
|
|
|
- // change_se = window.setTimeout(change_twoSec,2000);
|
|
|
- // change_thir = window.setTimeout(change_thirSec,3000);
|
|
|
+ this.orbitRadius = random(maxOrbit(w, h));
|
|
|
+ this.radius = random(60, this.orbitRadius) / 8;
|
|
|
+ //星星大小
|
|
|
+ this.orbitX = w / 2;
|
|
|
+ this.orbitY = h / 2;
|
|
|
+ this.timePassed = random(0, maxStars);
|
|
|
+ this.speed = random(this.orbitRadius) / 50000;
|
|
|
+ //星星移动速度
|
|
|
+ this.alpha = random(2, 10) / 10;
|
|
|
|
|
|
+ count++;
|
|
|
+ stars[count] = this;
|
|
|
}
|
|
|
- var d_zb_guiji = 100;
|
|
|
- var d_zb_gongxiang = 200;
|
|
|
-
|
|
|
- //愚蠢的动一动
|
|
|
- var change_se;
|
|
|
- function change_twoSec() {
|
|
|
- window.clearTimeout(change_se);
|
|
|
-
|
|
|
- change_se = window.setTimeout(change_twoSec,2000);
|
|
|
-
|
|
|
- var tj_interface_total =parseInt($("#tj_interface_total").text()) ;
|
|
|
- if(fuck){
|
|
|
- tj_interface_total+=5;
|
|
|
- fuck = false;
|
|
|
- }else{
|
|
|
- tj_interface_total-=5;
|
|
|
- fuck = true;
|
|
|
- }
|
|
|
-
|
|
|
- $("#tj_interface_total").text(tj_interface_total);
|
|
|
- var tj_dypc =parseInt($("#tj_dypc").text()) ;
|
|
|
- if(fuck == false && tj_dypc >3){
|
|
|
- tj_dypc-=3;
|
|
|
- fuck = true;
|
|
|
- }else{
|
|
|
- tj_dypc+=6;
|
|
|
- fuck = false;
|
|
|
- }
|
|
|
- $("#tj_dypc").text(tj_dypc);
|
|
|
|
|
|
+ Star.prototype.draw = function () {
|
|
|
+ var x = Math.sin(this.timePassed) * this.orbitRadius + this.orbitX,
|
|
|
+ y = Math.cos(this.timePassed) * this.orbitRadius + this.orbitY,
|
|
|
+ twinkle = random(10);
|
|
|
|
|
|
- var tj_gjpc =parseInt($("#tj_gjpc").text()) ;
|
|
|
- if(tj_gjpc){
|
|
|
- tj_gjpc+=2;
|
|
|
+ if (twinkle === 1 && this.alpha > 0) {
|
|
|
+ this.alpha -= 0.05;
|
|
|
+ } else if (twinkle === 2 && this.alpha < 1) {
|
|
|
+ this.alpha += 0.05;
|
|
|
}
|
|
|
|
|
|
- $("#tj_gjpc").text(tj_gjpc);
|
|
|
-
|
|
|
- var tj_gxpc =parseInt($("#tj_gxpc").text()) ;
|
|
|
- tj_gxpc++;
|
|
|
- $("#tj_gxpc").text(tj_gxpc);
|
|
|
-
|
|
|
-
|
|
|
- var tj_jrbm =parseInt($("#tj_jrbm").text()) ;
|
|
|
- tj_jrbm++;
|
|
|
- $("#tj_jrbm").text(tj_jrbm);
|
|
|
+ ctx.globalAlpha = this.alpha;
|
|
|
+ ctx.drawImage(canvas2, x - this.radius / 2, y - this.radius / 2, this.radius, this.radius);
|
|
|
+ this.timePassed += this.speed;
|
|
|
}
|
|
|
- var change_thir;
|
|
|
- function change_thirSec() {
|
|
|
- window.clearTimeout(change_thir);
|
|
|
-
|
|
|
-
|
|
|
|
|
|
- d_zb_guiji+=1;
|
|
|
- d_zb_gongxiang += 5;
|
|
|
- jkzb(d_zb_guiji, d_zb_gongxiang);
|
|
|
-
|
|
|
- data_total_value[0]++;
|
|
|
- data_total_value[1]+=2;
|
|
|
- jrbm(data_total_name, data_total_value);
|
|
|
+ for (var i = 0; i < maxStars; i++) {
|
|
|
+ new Star();
|
|
|
+ }
|
|
|
|
|
|
- data_szygjjk_value[0]++;
|
|
|
- data_szygjjk_value[1]+=2;
|
|
|
- data_szygjjk_value[3]++;
|
|
|
- szy_gj(data_szygjjk_name, data_szygjjk_value);
|
|
|
+ function animation() {
|
|
|
+ ctx.globalCompositeOperation = 'source-over';
|
|
|
+ ctx.globalAlpha = 0.5; //尾巴
|
|
|
+ ctx.fillStyle = 'hsla(' + hue + ', 64%, 6%, 2)';
|
|
|
+ ctx.fillRect(0, 0, w, h)
|
|
|
|
|
|
- data_szygxjk_value[1]++;
|
|
|
- data_szygxjk_value[3]++;
|
|
|
- szy_gx(data_szygxjk_name, data_szygxjk_value);
|
|
|
- change_thir = window.setTimeout(change_thirSec,3000);
|
|
|
+ ctx.globalCompositeOperation = 'lighter';
|
|
|
+ for (var i = 1, l = stars.length; i < l; i++) {
|
|
|
+ stars[i].draw();
|
|
|
+ }
|
|
|
+ ;
|
|
|
+ window.requestAnimationFrame(animation);
|
|
|
}
|
|
|
|
|
|
+ animation();
|
|
|
</script>
|
|
|
-
|
|
|
-
|
|
|
+<script type="text/javascript" th:src="@{/visualization/js/echarts_div.js}"></script>
|
|
|
+<script type="text/javascript" th:src="@{/visualization/js/echarts-tooltip-carousel.js}"></script>
|
|
|
</body>
|
|
|
</html>
|