From a1f05ddf1901ef80cb10cff9af57f457c99121c6 Mon Sep 17 00:00:00 2001 From: zmk <496160012@qq.com> Date: 星期三, 03 七月 2024 17:25:03 +0800 Subject: [PATCH] 提交代码 --- javaweb-plus/javaweb-admin/src/main/resources/templates/main.html | 1067 ++++++++++++++++++++++++++++------------------------------- 1 files changed, 505 insertions(+), 562 deletions(-) diff --git a/javaweb-plus/javaweb-admin/src/main/resources/templates/main.html b/javaweb-plus/javaweb-admin/src/main/resources/templates/main.html index ba0d2d9..bb1dc48 100644 --- a/javaweb-plus/javaweb-admin/src/main/resources/templates/main.html +++ b/javaweb-plus/javaweb-admin/src/main/resources/templates/main.html @@ -2,61 +2,341 @@ <html lang="zh" xmlns:th="http://www.thymeleaf.org"> <head> <th:block th:include="include :: header('寮瑰眰缁勪欢')" /> -<link href="../static/css/bootstrap.min.css" - th:href="@{/css/bootstrap.min.css}" rel="stylesheet" /> -<link href="../static/css/font-awesome.min.css" - th:href="@{/css/font-awesome.min.css}" rel="stylesheet" /> -<link href="../static/css/main/animate.min.css" - th:href="@{/css/main/animate.min.css}" rel="stylesheet" /> -<link href="../static/css/main/style.min862f.css" - th:href="@{/css/main/style.min862f.css}" rel="stylesheet" /> +<link href="../static/css/bootstrap.min.css" th:href="@{/css/bootstrap.min.css}" rel="stylesheet" /> +<link href="../static/css/font-awesome.min.css" th:href="@{/css/font-awesome.min.css}" rel="stylesheet" /> +<link href="../static/css/main/animate.min.css" th:href="@{/css/main/animate.min.css}" rel="stylesheet" /> +<link href="../static/css/main/style.min862f.css" th:href="@{/css/main/style.min862f.css}" rel="stylesheet" /> <link rel="stylesheet" th:href="@{/css/custom/main.css}" /> - <th:block th:include="include :: datetimepicker-css" /> - <style type="text/css"> - .content { - width: 100%; - background-color: rgba(0,0,0,0.01) !important; - } - </style> +<link href="../static/js/elementUI/index.css" th:href="@{/js/elementUI/index.css}" rel="stylesheet" /> + +<style type="text/css"> + .content { + width: 100%; + background-color: rgba(0,0,0,0.01) !important; + padding:10px; + } + [v-cloak]{ + display: none; + } + .el-card__header{ + height: 40px; + padding: 8px 20px; + } + .active-red{ + width: 20px; + height: 20px; + border-radius: 50%; + font-size: 14px; + color: white; + background: #F56C6C; + text-align: center; + line-height: 20px; + float: left; + } + + .active-yellow{ + width: 20px; + height: 20px; + border-radius: 50%; + font-size: 14px; + color: white; + background: #E6A23C; + text-align: center; + line-height: 20px; + float: left; + } + + .active-blue{ + width: 20px; + height: 20px; + border-radius: 50%; + font-size: 14px; + color: white; + background: #67C23A; + text-align: center; + line-height: 20px; + float: left; + } + .cdcode{ + width: 15%; + float: left; + margin-left: 10px; + font-size: 16px; + line-height: 20px; + } + .cdstatus{ + width: 15%; + float: left; + margin-left: 0px; + font-size: 16px; + line-height: 20px; + } + .cdprocess{ + width: 60%; + float: left; + margin-left: 10px; + } + .rankrow{ + margin-top: 12px; + cursor: pointer; + } + .ilblock{ + border-left: 1px solid #e3e5e7; + padding: 0 40px; + align-content: center; + } + .ilblock>span{ + display: block; + line-height: 30px; + } + + + <!-- 琛ㄦ牸鏍峰紡 --> + .el-table, .el-table__expanded-cell { + background-color: transparent; + color: #4D4D4D; + font-size: 13px; + } + + .el-table th, + .el-table tr, + .el-table td { + background-color: transparent; + border: 0px; + color: #4D4D4D; + font-size: 13px; + font-family: Source Han Sans CN Normal, Source Han Sans CN Normal-Normal; + font-weight: Normal; + } + .el-table::before { + height: 0px; + } + .el-table__body tr, + .el-table__body td { + padding: 0; + height: 22px; + } + .el-table__row.warning-row { + background:rgb(252,212,165); + } + .el-table__body-wrapper::-webkit-scrollbar-track { + background-color: rgb(252,212,165); + } + .el-table__body-wrapper::-webkit-scrollbar { + width: 10px; + opacity: 0.5; + } + .el-table__body-wrapper::-webkit-scrollbar-thumb { + border-radius: 15px; + background-color:rgb(252,212,165); + } +</style> </head> <body class="gray-bg"> - <div class="content"> - <div class="col-sm-12"> - <div class="ibox float-e-margins"> - <div class="ibox-title"> - <h3>娌夐檷鐩戞祴缃戝缓璁惧伐绋嬮」鐩垎甯�</h3> - </div> - <div class="ibox-content"> - - <div class="row"> - <div class="col-sm-8"> - <div id="map_div" style="width: 100%;height: 750px;"></div> + <div class="content" id="app" v-cloak> + <el-row style="height: 127px;"> + <el-col :span="6"> + <el-card class="box-card"> + <div style="flex:4;padding-right: 20px;" > + <div> + <li class="el-icon-s-promotion" style="font-size: 18px;margin-right: 5px;margin-left: -5px;color: #409eff;"></li> + <span style="color:rgba(0,0,0,.65);font-size: 15px;font-weight: bold;">鍦哄湴鏁伴噺</span> </div> - - <div class="col-sm-4"> - <div > - <div style="width: 100%;height: 20px;"> - <h3>椤圭洰鎬讳綋杩涘害(%)</h3> - </div> - <div id="Chart1" style="width: 80%;height: 250px;margin-left: 10%;"></div> - </div> - - <div > - <div style="width: 100%;height: 20px;"> - <h3>鍦哄湴璇︾粏杩涘害(%)</h3> - </div> - <div style="width: 100%;height: 500px;overflow: auto"> - <div id="Chart2" style="width: 100%;height: 1500px;"></div> - </div> - - </div> - + <div style="text-align: center;"> + <span style="color:#ED1C24;font-size: 30px;word-break: break-all;line-height: 70px">34 + </span> </div> </div> - </div> - </div> - </div> + + <div style="flex:6;" class="ilblock"> + <span style="color:rgba(0,0,0,.87);font-size: 15px;"> + 鍗忚皟涓� + <span style="float: right">{{indexDataCount.projectStatus0}}</span> +<!-- <li class="el-icon-caret-bottom" style="color: #f56c6c">--> + + </span> + <span style="color:rgba(0,0,0,.87);font-size: 15px;"> + 寰呭紑宸� + <span style="float: right">{{indexDataCount.projectStatus1}}</span> +<!-- <li class="el-icon-caret-bottom" style="color: #e6a23c">--> + </span> + <span style="color:rgba(0,0,0,.87);font-size: 15px;"> + 杩涜涓� + <span style="float: right">{{indexDataCount.projectStatus2}}</span> +<!-- <li class="el-icon-caret-top" style="color: #409eff">--> + </span> + + </div> + </el-card> + </el-col> + + <el-col :span="6"> + <el-card class="box-card"> + <div style="flex:4;padding-right: 20px;"> + <div> + <li class="el-icon-coin" style="font-size: 18px;margin-right: 5px;margin-left: -5px;color: #085abe"></li> + <span style="color:rgba(0,0,0,.65);font-size: 15px;font-weight: bold;">閽诲瓟鏁伴噺</span> + </div> + <div style="text-align: center"> + <span style="color:#1894F6;font-size: 30px;word-break: break-all;line-height: 70px;">647 + </span> + </div> + </div> + + <div style="flex:6;" class="ilblock"> + <span style="color:rgba(0,0,0,.87);font-size: 15px;"> + 鎬昏繘灏� <span style="float: right">{{indexDataCount.footageCount}}m</span> +<!-- <li class="el-icon-caret-bottom" style="color: #f56c6c">--> + </span> + <span style="color:rgba(0,0,0,.87);font-size: 15px;"> + 宸插畬鎴� <span style="float: right">{{indexDataCount.footageCplCount}}m</span> +<!-- <li class="el-icon-caret-bottom" style="color: #409eff">--> + </span> + </div> + </el-card> + </el-col> + + <el-col :span="6"> + <el-card class="box-card"> + <div style="flex:4;padding-right: 20px;"> + <div> + <li class="el-icon-video-camera" style="font-size: 18px;margin-right: 5px;margin-left: -5px;color: #11d713"></li> + <span style="color:rgba(0,0,0,.65);font-size: 15px;font-weight: bold;">瀹炴椂鐩戞帶</span> + </div> + <div style="text-align: center"> + <span style="color:#F7931E;font-size: 30px;word-break: break-all;line-height: 70px">68 + </span> + </div> + </div> + + <div style="flex:6;" class="ilblock"> + <div> + + </div> + <span style="color:rgba(0,0,0,.87);font-size: 15px;"> + 宸插畨瑁� <span style="float: right">{{indexDataCount.cameraCount}}</span> +<!-- <li class="el-icon-caret-bottom" style="color: #f56c6c">--> + </span> + <span style="color:rgba(0,0,0,.87);font-size: 15px;"> + 鏈畨瑁� <span style="float: right">{{indexDataCount.cameraCountNaN}}</span> +<!-- <li class="el-icon-caret-bottom" style="color: #409eff">--> + </span> + </div> + </el-card> + </el-col> + <el-col :span="6"> + <el-card class="box-card"> + <div style="flex:4;padding-right: 20px;"> + <div> + <li class="el-icon-s-order" style="font-size: 18px;margin-right: 5px;margin-left: -5px;color: #917ed0"></li> + <span style="color:rgba(0,0,0,.65);font-size: 15px;font-weight: bold;">璧勬枡鏂囦欢</span> + </div> + <div style="text-align: center"> + <span style="color:#F7931E;font-size: 30px;word-break: break-all;line-height: 70px;"> + {{indexDataCount.fileCount}} + </span> + </div> + </div> + + <div style="flex:6;" class="ilblock"> + <span style="color:rgba(0,0,0,.87);font-size: 15px;"> + 鏂藉伐璧勬枡 <span style="float: right">0</span> +<!-- <li class="el-icon-caret-bottom" style="color: #f56c6c">--> + </span> + <span style="color:rgba(0,0,0,.87);font-size: 15px;"> + 瀹夊叏璧勬枡 <span style="float: right">0</span> +<!-- <li class="el-icon-caret-bottom" style="color: #409eff">--> + </span> + <span style="color:rgba(0,0,0,.87);font-size: 15px;"> + 璐ㄩ噺璧勬枡 <span style="float: right">0</span> +<!-- <li class="el-icon-caret-bottom" style="color: #409eff">--> + </span> + </div> + + </el-card> + </el-col> + </el-row> + <el-row> + <el-col :span="16"> + <el-card class="box-card"> + <div style="height: 200px;width: 100%;"> + <h3>鏉愭枡缁熻</h3> + <el-col :span="10" style="height: 200px;"> + <div style="margin-top: 15px"> + <template> + <el-table :data="tubLogs" border size="small" style="width: 100%" + :header-cell-style="{color: '#4D4D4D',background: '#F7931E',fontWeight: '400'}" + :row-class-name="tableRowClassName"> + <!-- <el-table-column prop="code" label="搴忓彿"></el-table-column>--> + <el-table-column prop="tubName" label="鍚嶇О"></el-table-column> + <el-table-column prop="inboundNumber" label="鍏ュ簱鏁伴噺"></el-table-column> + <el-table-column prop="outboundNumber" label="鍑哄簱鏁伴噺"></el-table-column> + <el-table-column prop="unit" label="鍗曚綅"></el-table-column> + + </el-table> + </template> + </div> + </el-col> + <el-col :span="14" style="height: 200px;"> + <div id="column-chart" style="height: 180px; width: 100%;"></div> + </el-col> + </div> + </el-card> + + <el-card class="box-card" style="margin-top: 20px;"> + <div id="map_div" style="width: 100%;height: 550px;margin-top: -5px"></div> + </el-card> + + </el-col> + + <el-col :span="8"> + <el-card class="box-card"> + <div style="height: 200px;width: 100%"> + <div style="width: 100%;height: 20px;"> + <h3>椤圭洰鎬讳綋杩涘害(%)</h3> + </div> + <div id="Chart1" style="width: 80%;height: 180px;margin-left: 10%;"></div> + </div> + </el-card> + + <el-card class="box-card" style="margin-top: 20px;"> + <div style="width: 100%"> + <div style="width: 100%;height: 20px;margin-bottom: 10px;text-align: center;"> + <h3>鍦哄湴璇︾粏杩涘害(%)</h3> + </div> + <div style="width: 100%;height: 500px;overflow: auto"> + + <el-row class="rankrow" v-for='entity in stationProcessData' @click.native='viewStation(entity)'> + <el-col :span="2" > + <div v-if="entity.status=='鍗忚皟涓�'" class="active-red">{{entity.ranking}}</div> + <div v-if="entity.status=='寰呭紑宸�'" class="active-yellow">{{entity.ranking}}</div> + <div v-if="entity.status=='杩涜涓�'" class="active-blue">{{entity.ranking}}</div> + + </el-col> + + <el-col :span="7"> + <div style="font-size: 16px">{{entity.station}}</div> + </el-col > + + <el-col :span="5"> + <div style="font-size: 16px">{{entity.status}}</div> + </el-col> + + <el-col :span="8"> + <div> + <el-progress :stroke-width="10" :percentage="entity.value"></el-progress> + </div> + </el-col> + </el-row> + </div> + </div> + + </el-card> + + </el-col> + + </el-row> </div> @@ -68,19 +348,151 @@ <script src="http://lbs.tianditu.gov.cn/js/lib/d3/d3.min.js" type="text/javascript"></script> <script src="http://lbs.tianditu.gov.cn/api/js4.0/opensource/openlibrary/D3SvgOverlay.js" type="text/javascript"></script> <script th:src="@{/js/custom/main.js}"></script> + + <script th:src="@{/js/vue.min.js}"></script> + <script th:src="@{/js/elementUI/index.js}"></script> + <th:block th:include="include :: sparkline-js" /> <th:block th:include="include :: footer" /> -<script type="text/javascript"> + <script th:inline="javascript"> + var loginuser = [[${loginuser}]]; $(function() { + if(loginuser=='admin'){ + window.open("http://49.4.115.102:8000/onemap/onemap.html","_blank"); + } + loadMap(); getReallyData(); totalProcess(); stationProcess(); - //getRegulatoryUnitChartData("",""); - //bindEvent(); + indexCount(); + tubLogs(); }) + //鍦哄湴鍜屽湴鍥剧偣鍑昏仈鍔� + function viewStation(station) { + var lng = station.lng; + var lat = station.lat; + map.centerAndZoom(new T.LngLat(lng, lat), 13); + } + + function tubLogs() { + + const chart = echarts.init(document.getElementById("column-chart")); + const option = { + tooltip: { + trigger: 'axis', + axisPointer: { + type: 'shadow' + } + }, + legend: {}, + grid: { + left: '3%', + right: '4%', + bottom: '3%', + containLabel: true + }, + xAxis: [ + { + type: 'category', + data: [] + } + ], + yAxis: [ + { + type: 'value' + } + ], + series: [ + { + name: '鍑哄簱', + type: 'bar', + emphasis: { + focus: 'series' + }, + data: [], + itemStyle: { + // 淇敼鏌卞瓙鐨勯鑹� + color: '#e2b507' + } + }, + { + name: '鍏ュ簱', + type: 'bar', + stack: 'Ad', + emphasis: { + focus: 'series' + }, + data: [], + itemStyle: { + // 淇敼鏌卞瓙鐨勯鑹� + color: '#2992c6' + } + }, + + ] + }; + + let url = ctx + "/system/stat/tubLogData"; + $.ajaxSettings.async = false; + $.get(url,{},function(res){ + vm.tubLogs = res.tubLogs; + + res.tubLogs.forEach(function(value, index, array) { + const tubName = value.tubName; + const inboundNumber = value.inboundNumber; + const outboundNumber = value.outboundNumber; + const unit = value.unit; + option.xAxis[0].data[index] = tubName; + option.series[0].data[index] = outboundNumber; + option.series[1].data[index] = inboundNumber; + }); + chart.setOption(option, true); + }) + $.ajaxSettings.async = false; + } + + //棣栭〉绗竴琛屼釜鏁扮粺璁� + function indexCount() { + let url = ctx + "/system/stat/indexDataCount"; + $.ajaxSettings.async = false; + $.get(url,{},function(res){ + vm.indexDataCount = res.data; + vm.indexDataCount.cameraCountNaN = 68 -vm.indexDataCount.cameraCount; + }) + $.ajaxSettings.async = false; + + } + //鍦哄湴杩涘害 + function stationProcess() { + let url = ctx + "/system/stat/projectProcess"; + $.ajaxSettings.async = false; + $.get(url,{},function(res){ + vm.stationProcessData = res.projectData; + }) + $.ajaxSettings.async = false; + } + var vm = new Vue({ + el: "#app", + data() { + return { + stationProcessData: [], + indexDataCount :"", + tubLogs:[], + }; + }, + methods: { + tableRowClassName({ row, rowIndex }) { + if (rowIndex % 2 == 0) { + return ""; + } else { + return "warning-row"; + } + }, + } + }); // 鍔犺浇鍦板浘 let map=null; var countries = []; @@ -101,6 +513,8 @@ map.addOverLay(countriesOverlay1) countriesOverlay.bringToBack(); }); + + //map.setStyle("indigo"); } function init(sel, transform) { @@ -144,7 +558,7 @@ // 鑾峰彇鏁版嵁搴撶湡瀹炴暟鎹� function getReallyData() { - let url = window.location.protocol + "//" + window.location.host + "/bjfw/system/project"; + let url = window.location.protocol + "//" + window.location.host + "/bjfw/system/stat/project"; $.get(url,function(res){ var data = res.projects; showProjectPoint(data); @@ -152,12 +566,28 @@ } //鍦板浘涓婂睍绀洪」鐩偣 function showProjectPoint(data){ - var projectIcon = new T.Icon({ - iconUrl: '/bjfw/images/icon/6.png', - iconSize: new T.Point(30, 30), - iconAnchor: new T.Point(6, 40), - }); + var projectIcon ; for(let i =0;i<data.length;i++){ + if (data[i].status === '1'){ + projectIcon = new T.Icon({ + iconUrl: '/bjfw/images/icon/yellow.png', + iconSize: new T.Point(30, 30), + iconAnchor: new T.Point(6, 40), + }); + }else if (data[i].status === '2'){ + projectIcon = new T.Icon({ + iconUrl: '/bjfw/images/icon/blue.png', + iconSize: new T.Point(30, 30), + iconAnchor: new T.Point(6, 40), + }); + }else { + projectIcon = new T.Icon({ + iconUrl: '/bjfw/images/icon/red.png', + iconSize: new T.Point(30, 30), + iconAnchor: new T.Point(6, 40), + }); + } + let lng = data[i].lng; let lat = data[i].lat; let marker = new T.Marker(new T.LngLat(lng, lat), { title: "鍦哄湴浣嶇疆",icon:projectIcon}); @@ -169,17 +599,23 @@ } function infoWindowProject(e){ + + let ids = e.ids + ""; var sContent = "<div style='margin:0px;'>" + "<div>" + - "<div style='margin:5px 0px 5px 5px;'>" + + "<div style='margin:1px 0px 1px 2px;width: 200px;'>" + "<font style='font-weight: bolder;'>鍦哄湴缂栧彿 :</font>" + e.code + "<br>" + "<font style='font-weight: bolder;'>鍦哄湴鍚嶅瓧 :</font>" + e.fullName + "<br>" + "<font style='font-weight: bolder;'>璐熻矗浜� :</font>" + e.leader + "<br>" + + "<a class='btn' onclick=viewdata(" +"'" + ids+ "'" + ")>鍦哄湴鏁版嵁</a>" + "</div>" + "</div>" + "</div>"; return sContent; + } + function viewdata (id) { + $.modal.openTab("鍦哄湴瀵艰埅",ctx+ "/geo/project/navigate?ids="+id); } function addClickHandler(content, marker) { @@ -195,46 +631,24 @@ } - // 椤甸潰鏁版嵁璧嬪�� - function pageAssignment(reallyData) { - for ( let key in reallyData) { - let className = "." + key; - $(className).text(reallyData[key]); - } - } - - //鏌ヨ鐩戠鍗曚綅椤圭洰缁熻鍥捐〃鏁版嵁 - function getRegulatoryUnitChartData(startTime,endTime){ - let url = window.location.protocol + "//" + window.location.host + "/bjfw/geotdp/index/indexProjectNumsCollect"; - $.get(url,{ - startTime: startTime, - endTime: endTime - },function(res){ - if(res.status && res.message === "鎿嶄綔鎴愬姛"){ - let chartData = {}; - chartData.yData = res.result.map((item)=>{ - return item.fullName; - }) - chartData.xData = res.result.map((item)=>{ - return item.projectNums; - }) - loadRegulatoryUnitChart(chartData); - }else{ - $.modal.alertError("璇锋眰鍑洪敊"); - } - - }) - } - + //鎬昏繘搴︿华琛ㄧ洏 function totalProcess() { var Chart1 = echarts.init(document.getElementById('Chart1')); - var pointerData = 36; // 浠〃鎸囬拡鏁版嵁 + var pointerData = 0; // 浠〃鎸囬拡鏁版嵁 + let url = ctx + "/system/stat/totalProcess"; + $.ajaxSettings.async = false; + $.get(url,{},function(res){ + pointerData = res.pointerData; + pointerData = (pointerData*100).toFixed(2); + }); + + $.ajaxSettings.async = false; var option = { backgroundColor: "#fff", series: [ { type: "gauge", - radius: 120, + radius: 80, z: 1, startAngle: 225, endAngle: -45, @@ -369,480 +783,9 @@ Chart1.setOption(option); } - var datas = [ - { ranking: 1, station: '鍦哄湴001', value: 85 }, - { ranking: 2, station: '鍦哄湴002', value: 22 }, - { ranking: 3, station: '鍦哄湴003', value: 33 }, - { ranking: 4, station: '鍦哄湴004', value: 40 }, - { ranking: 5, station: '鍦哄湴005', value: 33 }, - { ranking: 6, station: '鍦哄湴006', value: 14.97 }, - { ranking: 7, station: '鍦哄湴007', value: 13.03 }, - { ranking: 8, station: '鍦哄湴008', value: 18.48 }, - { ranking: 9, station: '鍦哄湴009', value: 16.74 }, - { ranking: 10, station: '鍦哄湴010', value: 14.97 }, - - { ranking: 11, station: '鍦哄湴011', value: 13.03 }, - { ranking: 12, station: '鍦哄湴012', value: 18.48 }, - - { ranking: 13, station: '鍦哄湴013', value: 16.74 }, - { ranking: 14, station: '鍦哄湴014', value: 14.97 }, - { ranking: 15, station: '鍦哄湴015', value: 13.03 }, - { ranking: 16, station: '鍦哄湴016', value: 18.48 }, - - { ranking: 17, station: '鍦哄湴017', value: 16.74 }, - { ranking: 18, station: '鍦哄湴018', value: 14.97 }, - { ranking: 19, station: '鍦哄湴019', value: 13.03 }, - { ranking: 20, station: '鍦哄湴020', value: 18.48 }, - - { ranking: 21, station: '鍦哄湴021', value: 16.74 }, - { ranking: 22, station: '鍦哄湴022', value: 14.97 }, - { ranking: 23, station: '鍦哄湴023', value: 13.03 }, - { ranking: 24, station: '鍦哄湴024', value: 18.48 }, - - { ranking: 25, station: '鍦哄湴025', value: 16.74 }, - { ranking: 26, station: '鍦哄湴026', value: 14.97 }, - { ranking: 27, station: '鍦哄湴027', value: 13.03 }, - { ranking: 28, station: '鍦哄湴028', value: 18.48 }, - - { ranking: 29, station: '鍦哄湴029', value: 13.03 }, - { ranking: 30, station: '鍦哄湴030', value: 18.48 }, - { ranking: 31, station: '鍦哄湴031', value: 13.03 }, - { ranking: 32, station: '鍦哄湴032', value: 18.48 }, - { ranking: 33, station: '鍦哄湴033', value: 13.03 }, - { ranking: 34, station: '鍦哄湴034', value: 18.48 }, - ]; - - var seriesName = ['','']; - var attackSourcesColor1 = ['#FF557F','#FFAA00','#5470C6','#1E9FFF']; - - var attackSourcesColor = [ - new echarts.graphic.LinearGradient(0, 1, 1, 1, [ - { offset: 0, color: 'rgba(255,85,127,1)' }, - { offset: 1, color: 'rgba(255,85,127,1)' }, - ]), - new echarts.graphic.LinearGradient(0, 1, 1, 1, [ - { offset: 0, color: 'rgba(255,170,0,1)' }, - { offset: 1, color: 'rgba(255,170,0,1)' }, - ]), - new echarts.graphic.LinearGradient(0, 1, 1, 1, [ - { offset: 0, color: 'rgba(84,112,198,1)' }, - { offset: 1, color: 'rgba(84,112,198,1)' }, - ]), - new echarts.graphic.LinearGradient(0, 1, 1, 1, [ - { offset: 0, color: 'rgba(30,159,255,.82)' }, - { offset: 1, color: 'rgba(30,159,255,.82)' }, - ]), - ]; - - function stationProcess() { - var Chart2 = echarts.init(document.getElementById('Chart2')); - - - var rankings = []; - var stationData = []; - var values = []; - - datas.forEach(function (it, index) { - rankings.push(it.ranking); - stationData.push(it.station); - values.push(it.value); - }); - - - option = { - // backgroundColor: '#000', - tooltip: { - trigger: 'axis', - axisPointer: { - type: 'shadow', - }, - }, - - grid: { - left: '-8%', - right: '2%', - bottom: '3%', - top:'2%', - containLabel: true, - }, - xAxis: { - type: 'value', - splitLine: { - show: false, - }, - axisLabel: { - show: false, - }, - axisTick: { - show: false, - }, - axisLine: { - show: false, - }, - }, - yAxis: [ - { - type: 'category', - inverse: true, - axisLine: { - show: false, - }, - axisTick: { - show: false, - }, - data: stationData, - axisLabel: { - margin: 30, - fontSize: 14, - align: 'left', - padding: [3, 0, 0, 0], - color: '#000', - rich: { - nt1: { - color: '#fff', - backgroundColor: attackSourcesColor1[0], - width: 20, - height: 18, - fontSize: 12, - align: 'center', - borderRadius: 50, - lineHeight: '5', - padding: [2, 0, 0, 0], - // padding:[0,0,2,0], - }, - nt2: { - color: '#fff', - backgroundColor: attackSourcesColor1[1], - width: 20, - height: 18, - fontSize: 12, - align: 'center', - borderRadius: 50, - padding: [2, 0, 0, 0], - }, - nt3: { - color: '#fff', - backgroundColor: attackSourcesColor1[2], - width: 20, - height: 18, - fontSize: 12, - align: 'center', - borderRadius: 50, - padding: [2, 0, 0, 0], - }, - nt: { - color: '#fff', - backgroundColor: attackSourcesColor1[3], - width: 20, - height: 18, - fontSize: 12, - align: 'center', - borderRadius: 50, - padding: [2, 0, 0, 0], - }, - }, - formatter: function (value, index) { - index = contains(stationData, value) + 1; - if (index - 1 < 3) { - return ['{nt' + index + '|' + index + '}'].join('\n'); - } else { - return ['{nt|' + index + '}'].join('\n'); - } - }, - }, - }, - - { - type: 'category', - inverse: true, - axisTick: 'none', - axisLine: 'none', - show: true, - axisLabel: { - textStyle: { - color: '#666', - fontSize: '12', - }, - }, - data: dataFormat(values), - }, - - { // 鏉$姸鏍囬 - type: 'category', - inverse: true, - offset: -10, - position: 'left', - axisTick: 'none', - axisLine: 'none', - show: true, - axisLabel: { - interval: 0, - color: ['#666'], - align: 'left', - verticalAlign: 'bottom', - lineHeight: 42, - fontSize: 14, - }, - data: dataFormat(stationData), - }, - ], - series: [ - { - zlevel: 1, - name: seriesName[0], - type: 'bar', - barWidth: 15, - data: dataFormat(values), - align: 'center', - itemStyle: { - normal: { - barBorderRadius: 10, - }, - }, - label: { //鏉$姸涓殑鏍峰紡 - show: true, - fontSize: 10, - color: '#fff', //鏉¤涓瓧浣撻鑹� - textBorderWidth: 2, - padding: [2, 0, 0, 0], - }, - }, - { - name: seriesName[1], - type: 'bar', - barWidth: 15, - barGap: '-100%', - data: [100, 100, 100, 100, 100, 100, 100, 100, 100, 100, - 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, - 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, - 100, 100, 100, 100], - itemStyle: { - normal: { - color: 'rgba(200,200,200,.3)', - //width:"100%", - fontSize: 12, - barBorderRadius: 30, - }, - }, - }, - ], - }; - Chart2.setOption(option); - } - - function dataFormat(data) { - var arr = []; - data.forEach(function (item, i) { - let itemStyle = { - color: i > 3 ? attackSourcesColor[3] : attackSourcesColor[i], - }; - arr.push({ - value: item, - itemStyle: itemStyle, - }); - }); - return arr; - } - - function contains(arr, dst) { - var i = arr.length; - while ((i -= 1)) { - if (arr[i] == dst) { - return i; - } - } - return false; - } - - //鍔犺浇鐩戠鍗曚綅椤圭洰缁熻鍥捐〃 - function loadRegulatoryUnitChart(chartData){ - var myChart = echarts.init(document.getElementById('rank_chart')); - - let beginColor = "rgb(255,140,0,0.1)", - endColor = "rgb(255,140,0,1)", - endPix = ""; - //let endZom = 50; - - let option = { - title: { - show: false, - }, - dataZoom: [ - { - type: "inside", - start: 0, - // end: endZom, - orient: "vertical", - zoomOnMouseWheel: false, ////婊氳疆鏄惁瑙﹀彂缂╂斁 - }, - ], - tooltip: { - trigger: "axis", - axisPointer: { - type: "shadow", - }, - }, - legend: { - bottom: 20, - right: 0, - textStyle: { - color: "#666", - fontSize: 18, - }, - orient: "vertical", - }, - grid: { - borderWidth: 0, - top: "8%", - left: "1%", - right: "8%", - bottom: "2%", - }, - color: "#fff", - yAxis: [ - { - type: "category", - inverse: true, - axisLine: { - show: false, - }, - splitLine: { - show: false, - }, - axisTick: { - show: false, - }, - axisLabel: { - show: false, - }, - data: chartData.yData, - }, - ], - xAxis: { - type: "value", - axisTick: { - show: false, - }, - axisLine: { - show: false, - }, - splitLine: { - show: false, - }, - axisLabel: { - show: false, - }, - }, - series: [ - { - name: "绱", - type: "bar", - barWidth: "10px", - itemStyle: { - normal: { - show: true, - color: new echarts.graphic.LinearGradient(0, 0, 1, 0, [ - { - offset: 0, - color: beginColor, - }, - { - offset: 1, - color: endColor, - }, - ]), - barBorderRadius: [0, 5, 5, 0], - }, - emphasis: { - shadowBlur: 15, - shadowColor: "rgba(0, 0, 0, 0.1)", - }, - }, - data: chartData.xData, - animationDuration: 1500, - label: { - normal: { - color: "black", - show: true, - position: "right", - fontSize: 18, - fontStyle: "italic", - formatter: function (para) { - return para.data + endPix; - }, - }, - }, - }, - { - type: "bar", - barGap: "0", - barWidth: 10, - animation: false, - itemStyle: { - color: "transparent", - }, - tooltip: { - show: false, - }, - label: { - show: true, - position: ["0", "-35"], - fontSize: 13, - color: "rgb(0,0,0,0.7)", - formatter: function (param) { - return param.dataIndex + 1 + " " + param.name; - }, - }, - data: chartData.xData, - }, - - ], - animationEasing: "cubicOut", - }; - - myChart.setOption(option); - } - - //缁戝畾浜嬩欢 - function bindEvent(){ - $(".statistic-btn .btn").on("click",function(){ - if(this.innerText === "鎬昏"){ - getRegulatoryUnitChartData("",""); - }else if(this.innerText === "鏈勾搴�"){ - let d = new Date(); - let n = d.getFullYear(); - let startTime = n + "-01-01 00:00:00"; - let endTime = n + "-12-31 23:59:59"; - getRegulatoryUnitChartData(startTime,endTime); - }else{ - let startTime = getFirstDay() + " 00:00:00"; - let endTime = getLastDay() + " 23:59:59"; - getRegulatoryUnitChartData(startTime,endTime); - } - }) - } - - //鑾峰彇鏈湀绗竴澶� - function getFirstDay(){ - var y = new Date().getFullYear(); //鑾峰彇骞翠唤 - var m = new Date().getMonth() + 1; //鑾峰彇鏈堜唤 - var d = '01' - m = m < 10 ? '0' + m : m; //鏈堜唤琛� 0 - - return [y,m,d].join("-") - } - //鑾峰彇鏈湀鏈�鍚庝竴澶� - function getLastDay(){ - var y = new Date().getFullYear(); //鑾峰彇骞翠唤 - var m = new Date().getMonth() + 1; //鑾峰彇鏈堜唤 - var d = new Date(y, m, 0).getDate(); //鑾峰彇褰撴湀鏈�鍚庝竴鏃� - m = m < 10 ? '0' + m : m; //鏈堜唤琛� 0 - d = d < 10 ? '0' + d : d; //鏃ユ暟琛� 0 - return [y,m,d].join("-"); - } </script> -- Gitblit v1.9.1