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.
1887 lines
70 KiB
1887 lines
70 KiB
<#include "../../_include/_t.ftl"/>
|
|
<!DOCTYPE html>
|
|
<html>
|
|
<head>
|
|
<title></title>
|
|
<#include "../../_include/_h.ftl"/>
|
|
<#include "../../_include/_l.ftl"/>
|
|
<#include "../../_include/_j.ftl"/>
|
|
<#include "../../_include/_z.ftl"/>
|
|
<#include "../../_include/_e.ftl"/>
|
|
<#include "../../_include/bdata/_c.ftl"/>
|
|
<style type="text/css">
|
|
* {
|
|
margin: 0;
|
|
padding: 0;
|
|
box-sizing: border-box;
|
|
list-style: none;
|
|
}
|
|
|
|
#body {
|
|
font-family: "微软雅黑", arial, helvetica, sans-serif;
|
|
font-size: 16px;
|
|
border: 0;
|
|
outline: none;
|
|
color: #FFFFFF;
|
|
background: #032c56;
|
|
}
|
|
|
|
.clearfix:after {
|
|
display: block;
|
|
clear: both;
|
|
content: "";
|
|
visibility: hidden;
|
|
height: 0;
|
|
}
|
|
|
|
#body a {
|
|
text-decoration: none;
|
|
}
|
|
|
|
.clearfix {
|
|
zoom: 1;
|
|
}
|
|
|
|
.fl {
|
|
float: left;
|
|
}
|
|
|
|
.fr {
|
|
float: right;
|
|
}
|
|
|
|
.m-10 {
|
|
margin-left: 10px;
|
|
}
|
|
|
|
.jc-title1 {
|
|
height: 60px;
|
|
background: #1c5997;
|
|
line-height: 60px;
|
|
text-align: center;
|
|
font-size: 24px;
|
|
}
|
|
|
|
.jc-time {
|
|
width: 100%;
|
|
height: 56px;
|
|
padding: 20px;
|
|
padding-bottom: 0;
|
|
}
|
|
|
|
.jc-time1 {
|
|
width: 50%;
|
|
height: 36px;
|
|
}
|
|
|
|
.jc-print {
|
|
width: 90px;
|
|
height: 36px;
|
|
line-height: 36px;
|
|
background: url(${ctx}/style/images/jc-time1.png) no-repeat;
|
|
text-align: center;
|
|
}
|
|
|
|
.jc-print a {
|
|
display: block;
|
|
color: #FFFFFF;
|
|
}
|
|
|
|
.jc-bgzq {
|
|
width: 118px;
|
|
height: 36px;
|
|
line-height: 36px;
|
|
font-size: 18px;
|
|
color: #0096ff;
|
|
background: url(${ctx}/style/images/jc-bgzq.png) left center no-repeat;
|
|
padding-left: 35px;
|
|
}
|
|
|
|
.jc-select {
|
|
width: 120px;
|
|
height: 36px;
|
|
background: #0e3d6e;
|
|
border: 1px solid #1c5997;
|
|
border-radius: 2px;
|
|
line-height: 34px;
|
|
padding-left: 10px;
|
|
color: #95d3ff;
|
|
outline: none;
|
|
font-size: 16px;
|
|
}
|
|
|
|
.jc-cont {
|
|
width: 100%;
|
|
height: auto;
|
|
margin-top: 20px;
|
|
}
|
|
|
|
.jc-title2 {
|
|
height: 50px;
|
|
background: url(${ctx}/style/images/jc-title2.jpg) repeat-x;
|
|
line-height: 50px;
|
|
font-size: 18px;
|
|
text-align: center;
|
|
}
|
|
|
|
.jc-dwxx {
|
|
width: 100%;
|
|
padding: 20px;
|
|
}
|
|
|
|
.jc-dwxx table {
|
|
width: 100%;
|
|
}
|
|
|
|
.jc-dwxx table td {
|
|
border: 1px solid #1c5997;
|
|
background: #0e3d6e;
|
|
height: 44px;
|
|
line-height: 44px;
|
|
color: #FFFFFF;
|
|
text-align: center;
|
|
}
|
|
|
|
.jc-dwxx table td.jc-dwxx-tit {
|
|
background: #0e4a86;
|
|
}
|
|
|
|
.jc-jrxt {
|
|
width: 100%;
|
|
height: 338px;
|
|
overflow: hidden;
|
|
}
|
|
|
|
.jc-jrxt1 {
|
|
width: 50px;
|
|
height: 338px;
|
|
background: #0e4a86;
|
|
text-align: center;
|
|
font-size: 18px;
|
|
padding-top: 110px;
|
|
line-height: 30px;
|
|
}
|
|
|
|
.jc-jrxt2 {
|
|
width: 1510px;
|
|
height: 338px;
|
|
}
|
|
|
|
.jc-jrxt2 li {
|
|
width: 296px;
|
|
height: 80px;
|
|
background: #0e3d6e;
|
|
margin-left: 6px;
|
|
margin-bottom: 6px;
|
|
float: left;
|
|
line-height: 80px;
|
|
text-align: center;
|
|
}
|
|
|
|
.jc-jrxt2 li img {
|
|
vertical-align: middle;
|
|
display: inline-block;
|
|
margin-right: 20px;
|
|
}
|
|
|
|
.jc-bjtj {
|
|
width: 100%;
|
|
padding: 0 20px;
|
|
}
|
|
|
|
.jc-row {
|
|
width: 100%;
|
|
padding: 20px 0;
|
|
}
|
|
|
|
.jc-title3 {
|
|
width: 100%;
|
|
font-size: 18px;
|
|
color: #FFFFFF;
|
|
text-align: center;
|
|
}
|
|
|
|
.jc-title3 span {
|
|
font-family: impact;
|
|
font-size: 30px;
|
|
color: #00fcff;
|
|
}
|
|
</style>
|
|
</head>
|
|
<body class="layui-layout-body" style="overflow-y: auto;">
|
|
<div id="body" style="width: 1560px; height: auto; margin: 0 auto;">
|
|
<div class="jc-title1">监测报告</div>
|
|
<div class="page_tools">
|
|
<div class="layui-inline layui-form" style="width:90px;">
|
|
<select id="date_type" lay-filter="select_type">
|
|
<option value="">自定义</option>
|
|
<option value="1">本周</option>
|
|
<option value="2">本月</option>
|
|
<option value="3">本季度</option>
|
|
<option value="4">本年</option>
|
|
</select>
|
|
</div>
|
|
<div class="layui-inline" style="width:120px;">
|
|
<input class="layui-input" type="text" id="data_1_01_beginDate" value="${.now?string('yyyy-MM-dd')}"
|
|
placeholder="年份" autocomplete="off"
|
|
style="font-size:16px;padding-top:4px;cursor:pointer;letter-spacing:1px;"/>
|
|
</div>
|
|
<div class="layui-inline">到</div>
|
|
<div class="layui-inline" style="width:120px;">
|
|
<input class="layui-input" type="text" id="data_1_01_endDate" value="${.now?string('yyyy-MM-dd')}"
|
|
placeholder="年份" autocomplete="off"
|
|
style="font-size:16px;padding-top:4px;cursor:pointer;letter-spacing:1px;"/>
|
|
</div>
|
|
<button id="queryBtn" class="layui-btn layui-btn-normal"><i class="layui-icon"></i>查询</button>
|
|
<button id="exportToWord" class="layui-btn layui-btn-normal"><i class="layui-icon"></i>导出word</button>
|
|
<button id="exportToPdf" class="layui-btn layui-btn-normal"><i class="layui-icon"></i>导出pdf</button>
|
|
</div>
|
|
<div class="jc-cont">
|
|
<div class="jc-title2">联网单位信息</div>
|
|
<div class="jc-dwxx">
|
|
<table cellpadding="0" cellspacing="0">
|
|
<tr>
|
|
<td class="jc-dwxx-tit" style="width: 300px;">单位名称</td>
|
|
<td><span id="socName_id"></span></td>
|
|
<td class="jc-dwxx-tit" style="width: 300px;">单位地址</td>
|
|
<td><span id="regionVals_id"></span><span id="socAddr_id"></span></td>
|
|
</tr>
|
|
<tr>
|
|
<td class="jc-dwxx-tit">单位类别</td>
|
|
<td><span id="socClass_id"></span></td>
|
|
<td class="jc-dwxx-tit">消防第一责任人</td>
|
|
<td><span id="m1_id"></span></td>
|
|
</tr>
|
|
<tr>
|
|
<td class="jc-dwxx-tit">设备总数</td>
|
|
<td><span id="ZS_1"></span>套</td>
|
|
<td class="jc-dwxx-tit">正常 | 离线</td>
|
|
<td><span id="ZS_2"></span>套 | <span id="ZS_3"></span>套</td>
|
|
</tr>
|
|
</table>
|
|
</div>
|
|
<div class="jc-jrxt">
|
|
<div class="jc-jrxt1 fl">接<br/>
|
|
入<br/>
|
|
系<br/>
|
|
统
|
|
</div>
|
|
<div class="jc-jrxt2 fr">
|
|
<ul>
|
|
<li><img src="${ctx}/style/images/jc-dqhz.png">电气火灾监测</li>
|
|
<li>总设备<span style="margin: 0 30px;">|</span><span id="DIAN_1" style="color: #00fcff;"></span></li>
|
|
<li>正常<span style="margin: 0 30px;">|</span><span id="DIAN_2" style="color: #00fcff;"></span></li>
|
|
<li>离线<span style="margin: 0 30px;">|</span><span id="DIAN_3" style="color: #00fcff;"></span></li>
|
|
<li>在线率<span style="margin: 0 30px;">|</span><span id="DIAN_4" style="color: #00fcff;"></span><span
|
|
style="color: #00fcff;">%</span></li>
|
|
<li><img src="${ctx}/style/images/jc-xfs.png">消防用水监测</li>
|
|
<li>总设备<span style="margin: 0 30px;">|</span><span id="XFSC_1" style="color: #00fcff;"></span></li>
|
|
<li>正常<span style="margin: 0 30px;">|</span><span id="XFSC_2" style="color: #00fcff;"></span></li>
|
|
<li>离线<span style="margin: 0 30px;">|</span><span id="XFSC_3" style="color: #00fcff;"></span></li>
|
|
<li>在线率<span style="margin: 0 30px;">|</span><span id="XFSC_4" style="color: #00fcff;"></span><span
|
|
style="color: #00fcff;">%</span></li>
|
|
<li><img src="${ctx}/style/images/jc-dlyg.png">独立烟感监测</li>
|
|
<li>总设备<span style="margin: 0 30px;">|</span><span id="YG_1" style="color: #00fcff;"></span></li>
|
|
<li>正常<span style="margin: 0 30px;">|</span><span id="YG_2" style="color: #00fcff;"></span></li>
|
|
<li>离线<span style="margin: 0 30px;">|</span><span id="YG_3" style="color: #00fcff;"></span></li>
|
|
<li>在线率<span style="margin: 0 30px;">|</span><span id="YG_4" style="color: #00fcff;"></span><span
|
|
style="color: #00fcff;">%</span></li>
|
|
<li><img src="${ctx}/style/images/jc-krqt.png">可燃气体监测</li>
|
|
<li>总设备<span style="margin: 0 30px;">|</span><span id="KRQ_1" style="color: #00fcff;"></span></li>
|
|
<li>正常<span style="margin: 0 30px;">|</span><span id="KRQ_2" style="color: #00fcff;"></span></li>
|
|
<li>离线<span style="margin: 0 30px;">|</span><span id="KRQ_3" style="color: #00fcff;"></span></li>
|
|
<li>在线率<span style="margin: 0 30px;">|</span><span id="KRQ_4" style="color: #00fcff;"></span><span
|
|
style="color: #00fcff;">%</span></li>
|
|
</ul>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div class="jc-cont">
|
|
<div class="jc-title2">报警信息</div>
|
|
<div class="jc-dwxx">
|
|
<table cellpadding="0" cellspacing="0">
|
|
<tr>
|
|
<td class="jc-dwxx-tit" style="width: 300px;">报警总数</td>
|
|
<td style="width: 207px;"><span id="bj_zs" ne;"></span>次</td>
|
|
<td class="jc-dwxx-tit" style="width: 300px;">电气火灾监测系统报警</td>
|
|
<td style="width: 207px;"><span id="dian_bj"></span>次</td>
|
|
<td class="jc-dwxx-tit" style="width: 300px;">建筑消防用水报警</td>
|
|
<td style="width: 207px;"><span id="shui_bj"></span>次</td>
|
|
</tr>
|
|
<tr>
|
|
<td class="jc-dwxx-tit">烟感报警</td>
|
|
<td><span id="yg_bj"></span>次</td>
|
|
<td class="jc-dwxx-tit">可燃气体报警</td>
|
|
<td><span id="krq_bj"></span>次</td>
|
|
<td class="jc-dwxx-tit">短信提醒发送</td>
|
|
<td><span id="messageNum"></span>条</td>
|
|
</tr>
|
|
<tr>
|
|
<td class="jc-dwxx-tit">语音提醒发送</td>
|
|
<td><span id="voiceNum"></span>次</td>
|
|
<td class="jc-dwxx-tit">报警次数最多</td>
|
|
<td><span id="max_name"></span></td>
|
|
</tr>
|
|
</table>
|
|
</div>
|
|
<div class="jc-bjtj">
|
|
<div class="jc-title1" style="height: 50px;line-height: 50px;font-size: 18px;">报警统计</div>
|
|
<div class="jc-row clearfix">
|
|
<div id="bjlb" style="width:400px;height:340px; float: left;"></div>
|
|
<div id="bjqstj" style="width:1000px;height:300px; float: right; "></div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div class="jc-cont">
|
|
<div class="jc-title2">电气火灾隐患预警监测报告</div>
|
|
<div class="jc-row clearfix">
|
|
<div style="width: 800px; height: 430px; float: left;">
|
|
<div class="jc-title3">报警次数总数:<span id="bj_zs1"></span>次</div>
|
|
<div id="dqbjcs" style="width: 100%; height: 370px;"></div>
|
|
</div>
|
|
<div id="dq-bjsbfx" style="width:500px;height:370px; float: right;"></div>
|
|
</div>
|
|
<div class="jc-bjtj">
|
|
<div class="jc-title1" style="height: 50px;line-height: 50px;font-size: 18px;">报警时间段分析</div>
|
|
<div class="jc-row clearfix">
|
|
<div id="dq-bjsjdfx" style="width:1200px;height:240px; float: left; "></div>
|
|
<div class="jc-title3" style="width: 230px; float: right; text-align: left; padding-top: 40px;">
|
|
周期内报警<span id="dian_time">-</span><span>点</span>报警次数最多,请注意该时间段内的用电情况。
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div class="jc-cont">
|
|
<div class="jc-title2">建筑消防用水监测报告</div>
|
|
<div class="jc-dwxx">
|
|
<table cellpadding="0" cellspacing="0">
|
|
<tr>
|
|
<td class="jc-dwxx-tit">报警总数</td>
|
|
<td><span id="bj_zs2"></span>次</td>
|
|
<td class="jc-dwxx-tit">液压报警</td>
|
|
<td><span id="yy_bj"></span>次</td>
|
|
<td class="jc-dwxx-tit">液位报警</td>
|
|
<td><span id="yw_bj"></span>次</td>
|
|
<td class="jc-dwxx-tit">报警设备</td>
|
|
<td><span id="bj_num2"></span>个</td>
|
|
</tr>
|
|
</table>
|
|
</div>
|
|
<div class="jc-bjtj">
|
|
<div class="jc-title1" style="height: 50px;line-height: 50px;font-size: 18px;">报警分析</div>
|
|
<div class="jc-row clearfix">
|
|
<div id="xfs-bjsbfx" style="width:400px;height:340px; float: left;"></div>
|
|
<div style="width:1000px;height:300px; float: right; ">
|
|
<div class="jc-title3">
|
|
<p>报警时间段分析</p>
|
|
<p>周期内报警<span id="shui_time">-</span><span>点</span>报警次数最多,请注意该时间段内的用水情况。</p>
|
|
</div>
|
|
<div id="xfs-bjsjdfx" style="width:1000px;height:260px;"></div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div class="jc-cont">
|
|
<div class="jc-title2">独立烟感监测系统监测报告</div>
|
|
<div class="jc-dwxx">
|
|
<table cellpadding="0" cellspacing="0">
|
|
<tr>
|
|
<td class="jc-dwxx-tit" style="width: 380px;">报警总数</td>
|
|
<td><span id="bj_zs3"></span>次</td>
|
|
<td class="jc-dwxx-tit" style="width: 380px;">报警设备</td>
|
|
<td><span id="bj_num3"></span>个</td>
|
|
</tr>
|
|
</table>
|
|
</div>
|
|
<div class="jc-bjtj">
|
|
<div class="jc-title1" style="height: 50px;line-height: 50px;font-size: 18px;">报警分析</div>
|
|
<div class="jc-row clearfix">
|
|
<div id="yg-bjsbfx" style="width:400px;height:340px; float: left;"></div>
|
|
<div style="width:1000px;height:300px; float: right; ">
|
|
<div class="jc-title3">
|
|
<p>报警时间段分析</p>
|
|
<p>周期内报警<span id="yg_time">-</span><span>点</span>报警次数最多,请注意该时间段内的用水情况。</p>
|
|
</div>
|
|
<div id="yg-bjsjdfx" style="width:1000px;height:260px;"></div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div class="jc-cont">
|
|
<div class="jc-title2">可燃气体监测系统监测报告</div>
|
|
<div class="jc-dwxx">
|
|
<table cellpadding="0" cellspacing="0">
|
|
<tr>
|
|
<td class="jc-dwxx-tit" style="width: 380px;">报警总数</td>
|
|
<td><span id="bj_zs4"></span>次</td>
|
|
<td class="jc-dwxx-tit" style="width: 380px;">报警设备</td>
|
|
<td><span id="bj_num4"></span>个</td>
|
|
</tr>
|
|
</table>
|
|
</div>
|
|
<div class="jc-bjtj">
|
|
<div class="jc-title1" style="height: 50px;line-height: 50px;font-size: 18px;">报警分析</div>
|
|
<div class="jc-row clearfix">
|
|
<div id="krqt-bjsbfx" style="width:400px;height:340px; float: left;"></div>
|
|
<div style="width:1000px;height:300px; float: right; ">
|
|
<div class="jc-title3">
|
|
<p>报警时间段分析</p>
|
|
<p>周期内报警<span id="krq_time">-</span><span>点</span>报警次数最多,请注意该时间段内的用水情况。</p>
|
|
</div>
|
|
<div id="krqt-bjsjdfx" style="width:1000px;height:260px;"></div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div class="jc-cont">
|
|
<div class="jc-title2">报告结论</div>
|
|
<div class="jc-dwxx">
|
|
<table cellpadding="0" cellspacing="0">
|
|
<tr>
|
|
<td class="jc-dwxx-tit" style="width: 300px;">设备在线率</td>
|
|
<td style="width: 207px;"><span id="zxl"></span>%</td>
|
|
<td class="jc-dwxx-tit" style="width: 300px;">设备运行情况</td>
|
|
<td style="width: 207px;"><span id="yxqk"></span></td>
|
|
<td class="jc-dwxx-tit" style="width: 300px;">周期内累计报警</td>
|
|
<td style="width: 207px;"><span id="ljbj"></span>次</td>
|
|
</tr>
|
|
<tr>
|
|
<td class="jc-dwxx-tit">消防安全成绩</td>
|
|
<td><span id="soc_score"></span>分</td>
|
|
<td class="jc-dwxx-tit">消防安全等级</td>
|
|
<td><span id="soc_level"></span>级</td>
|
|
</tr>
|
|
</table>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</body>
|
|
<script type="text/javascript">
|
|
var dataJson1 = "";
|
|
var dataJson2 = "";
|
|
var data1_socName = "";
|
|
var data1_socProp = "";
|
|
var data1_socLevel = "";
|
|
var data1_socIsrisk = "";
|
|
var data1_regionVals = "";
|
|
var data1_socAddr = "";
|
|
var data1_socInd = "";
|
|
var data1_socClass = "";
|
|
var data1_m1 = "";
|
|
var data1_m2 = "";
|
|
var data1_m3 = "";
|
|
var data1_messageNum = "";
|
|
var data1_voiceNum = "";
|
|
var data1_sydl = 0;
|
|
var data1_wd = 0;
|
|
var data1_dl = 0;
|
|
var data1_dy = 0;
|
|
var data1_yy = 0;
|
|
var data1_yw = 0;
|
|
layuiplus.on_w_1(function () {
|
|
layuiplus.init(1);
|
|
//日期类型选择监控
|
|
form.on("select(select_type)", function (data) {
|
|
if (data.value == "1") {//本周
|
|
$("#data_1_01_beginDate").val(timeUtil.getFirstDayOfWeek());
|
|
$("#data_1_01_endDate").val(timeUtil.timeFormate(new Date()));
|
|
}
|
|
if (data.value == "2") {//本月
|
|
$("#data_1_01_beginDate").val(timeUtil.getFirstDayOfMonth());
|
|
$("#data_1_01_endDate").val(timeUtil.timeFormate(new Date()));
|
|
}
|
|
if (data.value == "3") {//本季度
|
|
$("#data_1_01_beginDate").val(timeUtil.getFirstDayOfQuarter());
|
|
$("#data_1_01_endDate").val(timeUtil.timeFormate(new Date()));
|
|
}
|
|
if (data.value == "4") {//本年
|
|
$("#data_1_01_beginDate").val(timeUtil.getFirstDayOfYear());
|
|
$("#data_1_01_endDate").val(timeUtil.timeFormate(new Date()));
|
|
}
|
|
});
|
|
|
|
//日期input
|
|
ldate.render({
|
|
elem: "#data_1_01_beginDate",
|
|
type: "date",
|
|
max: "#data_1_01_endDate"
|
|
});
|
|
ldate.render({
|
|
elem: "#data_1_01_endDate",
|
|
type: "date",
|
|
max: "nowTime"
|
|
});
|
|
|
|
//页面内容初始化 不变的内容
|
|
$("#socName_id").html("${manager_user['groupName']}");//单位名称
|
|
var date = new Date();
|
|
$("#date_id").html(date.getFullYear() + "年" + (date.getMonth() + 1) + "月" + date.getDate() + "日");//当前天数
|
|
|
|
//查询单位详情以及设备报警信息赋值
|
|
queryInfo();
|
|
|
|
//点击查询触发查询事件
|
|
$("#queryBtn").click(function () {
|
|
queryInfo();
|
|
if ($("#exportToWord").prop("disabled") == true) {
|
|
$("#exportToWord").removeAttr("disabled");
|
|
$("#exportToWord").attr({"class": "layui-btn layui-btn-normal"});
|
|
}
|
|
if ($("#exportToPdf").prop("disabled") == true) {
|
|
$("#exportToPdf").removeAttr("disabled");
|
|
$("#exportToPdf").attr({"class": "layui-btn layui-btn-normal"});
|
|
}
|
|
});
|
|
|
|
});
|
|
|
|
function queryInfo() {
|
|
var loading = layer.load(0, {
|
|
shade: true,
|
|
time: 10 * 1000
|
|
});
|
|
//报告运行开始时间、结束时间
|
|
$("#beginDateId").html($("#data_1_01_beginDate").val());
|
|
$("#endDateId").html($("#data_1_01_endDate").val());
|
|
|
|
//查询该单位详细信息
|
|
var ajax1 = $.ajax({
|
|
type: "get",
|
|
url: "${ctx}/bdata/soc1/getReportInfo",
|
|
data: {
|
|
id: "${manager_user['baseId']}",
|
|
relId: "${manager_user['groupId']}",
|
|
beginDate: $("#data_1_01_beginDate").val(),
|
|
endDate: $("#data_1_01_endDate").val()
|
|
},
|
|
dataType: "json",
|
|
async: false,
|
|
success: function (data) {
|
|
//联网单位信息
|
|
//单位性质
|
|
var _socProp = ""
|
|
switch (data.soc.socProp) {
|
|
case "1":
|
|
_socProp = "机关";
|
|
break;
|
|
case "2":
|
|
_socProp = "团体";
|
|
break;
|
|
case "3":
|
|
_socProp = "企业";
|
|
break;
|
|
case "4":
|
|
_socProp = "事业";
|
|
break;
|
|
case "5":
|
|
_socProp = "其它";
|
|
break;
|
|
default:
|
|
_socProp = "-";
|
|
}
|
|
//消防等级
|
|
var _socLevel = ""
|
|
switch (data.soc.socLevel) {
|
|
case "1":
|
|
_socLevel = "消防安全重点单位";
|
|
break;
|
|
case "2":
|
|
_socLevel = "消防安全一般单位";
|
|
break;
|
|
case "3":
|
|
_socLevel = "九小场所";
|
|
break;
|
|
case "4":
|
|
_socLevel = "其它";
|
|
break;
|
|
default:
|
|
_socLevel = "-";
|
|
}
|
|
//高危单位
|
|
var _socIsrisk = ""
|
|
switch (data.soc.socIsrisk) {
|
|
case "1":
|
|
_socIsrisk = "是";
|
|
break;
|
|
default:
|
|
_socIsrisk = "否";
|
|
}
|
|
//所属行业
|
|
var _socInd = "";
|
|
if (data.soc.socInd != null) {
|
|
_socInd = data.soc.socInd.split("###")[1];
|
|
} else {
|
|
_socInd = "-";
|
|
}
|
|
|
|
//单位名称
|
|
$("#socName_id").html(data.soc.socName);
|
|
//行政区划
|
|
$("#regionVals_id").html(data.soc.regionVals);
|
|
//详细位置
|
|
var _socAddr = "";
|
|
if (data.soc.socAddr != null) {
|
|
_socAddr = data.soc.socAddr;
|
|
} else {
|
|
_socAddr = "-";
|
|
}
|
|
$("#socAddr_id").html(_socAddr);
|
|
//单位类别
|
|
var _socClass = "";
|
|
if (data.soc.socClass != null) {
|
|
_socClass = data.soc.socClass.split("###")[1];
|
|
} else {
|
|
_socClass = "-";
|
|
}
|
|
$("#socClass_id").html(_socClass);
|
|
|
|
//消防安全人员信息处理
|
|
var mansJson = $.parseJSON(data.soc.socMans);
|
|
//消防第一责任人
|
|
var soc_mans1 = "";
|
|
var m1 = mansJson['m1'];
|
|
var mans1 = m1.mans;
|
|
if (mans1 != null && mans1.length > 0) {
|
|
for (var i = 0; i < mans1.length; i++) {
|
|
soc_mans1 += mans1[i][0] + "(" + mans1[i][1] + ")";
|
|
soc_mans1 += "<br>";
|
|
}
|
|
} else {
|
|
soc_mans1 += "-";
|
|
}
|
|
$("#m1_id").html(soc_mans1);
|
|
//消防安全责任人
|
|
var soc_mans2 = "";
|
|
var m2 = mansJson['m2'];
|
|
var mans2 = m2.mans;
|
|
if (mans2 != null && mans2.length > 0) {
|
|
for (var i = 0; i < mans2.length; i++) {
|
|
soc_mans2 += mans2[i][0] + "(" + mans2[i][1] + ")";
|
|
soc_mans2 += "<br>";
|
|
}
|
|
} else {
|
|
soc_mans2 += "-";
|
|
}
|
|
//消防安全管理人
|
|
var soc_mans3 = "";
|
|
var m3 = mansJson['m3'];
|
|
var mans3 = m3.mans;
|
|
if (mans3 != null && mans3.length > 0) {
|
|
for (var i = 0; i < mans3.length; i++) {
|
|
soc_mans3 += mans3[i][0] + "(" + mans3[i][1] + ")";
|
|
soc_mans3 += "<br>";
|
|
}
|
|
} else {
|
|
soc_mans3 += "-";
|
|
}
|
|
|
|
//报警信息
|
|
//语音短信条数
|
|
$("#messageNum").html(data.messageNum);
|
|
$("#voiceNum").html(data.voiceNum);
|
|
|
|
//报告结论
|
|
var _socRs = data.soc.socRs;
|
|
if (_socRs == null) {
|
|
$("#soc_score").html("0");
|
|
$("#soc_level").html("-");
|
|
} else {
|
|
//展示
|
|
var _arrSocRs = _socRs.split("###");
|
|
$("#soc_score").html(_arrSocRs[0].split(":")[0]);
|
|
$("#soc_level").html(_arrSocRs[1]);
|
|
}
|
|
|
|
//赋值传递数据给后台
|
|
data1_socName = data.soc.socName;
|
|
data1_socProp = _socProp;
|
|
data1_socLevel = _socLevel;
|
|
data1_socIsrisk = _socIsrisk;
|
|
data1_regionVals = data.soc.regionVals;
|
|
data1_socAddr = _socAddr;
|
|
data1_socInd = _socInd;
|
|
data1_socClass = _socClass;
|
|
data1_m1 = soc_mans1;
|
|
data1_m2 = soc_mans2;
|
|
data1_m3 = soc_mans3;
|
|
data1_messageNum = data.messageNum;
|
|
data1_voiceNum = data.voiceNum;
|
|
}
|
|
});
|
|
|
|
//查询该单位详细信息
|
|
var ajax2 = $.ajax({
|
|
type: "get",
|
|
url: "http://${jcbgUrl}",
|
|
//url:"http://192.168.3.82:8062/WEBAPI/WebHandle/DataCountHandler.ashx",
|
|
data: {
|
|
Action: "StatisticalReport",
|
|
UNIT_ID: "${manager_user['groupId']}",
|
|
sTime: $("#data_1_01_beginDate").val(),
|
|
eTime: $("#data_1_01_endDate").val()
|
|
},
|
|
dataType: "json",
|
|
async: false,
|
|
success: function (data) {
|
|
data1_sydl = 0;
|
|
data1_wd = 0;
|
|
data1_dl = 0;
|
|
data1_dy = 0;
|
|
data1_yy = 0;
|
|
data1_yw = 0;
|
|
//电
|
|
$("#bj_num1").html("0");
|
|
//水
|
|
$("#bj_num2").html("0");
|
|
//烟感
|
|
$("#bj_num3").html("0");
|
|
//可燃气
|
|
$("#bj_num4").html("0");
|
|
dataJson2 = data.data4;
|
|
//接入系统设备数量
|
|
var sbzs = 0;//设备总数
|
|
var sbzc = 0;//正常设备的数量
|
|
var sbbj = 0;//报警设备的数量
|
|
var sblx = 0;//离线设备的数量
|
|
var _data = data.data1[0];
|
|
if (data.data1[0] == null) {
|
|
_data = new Object();
|
|
_data.DIAN_1 = 0;
|
|
_data.DIAN_2 = 0;
|
|
_data.DIAN_3 = 0;
|
|
_data.XFSC_1 = 0;
|
|
_data.XFSC_2 = 0;
|
|
_data.XFSC_3 = 0;
|
|
_data.GWSX_1 = 0;
|
|
_data.GWSX_2 = 0;
|
|
_data.GWSX_3 = 0;
|
|
_data.XHS_1 = 0;
|
|
_data.XHS_2 = 0;
|
|
_data.XHS_3 = 0;
|
|
_data.SPL_1 = 0;
|
|
_data.SPL_2 = 0;
|
|
_data.SPL_3 = 0;
|
|
_data.KRQ_1 = 0;
|
|
_data.KRQ_2 = 0;
|
|
_data.KRQ_3 = 0;
|
|
_data.YG_1 = 0;
|
|
_data.YG_2 = 0;
|
|
_data.YG_3 = 0;
|
|
}
|
|
//设备数量
|
|
//电气火灾监控系统
|
|
var dian_zs = _data.DIAN_1 + _data.DIAN_2 + _data.DIAN_3;
|
|
sbzs = sbzs + dian_zs;
|
|
sbzc = sbzc + _data.DIAN_1;
|
|
sbbj = sbbj + _data.DIAN_2;
|
|
sblx = sblx + _data.DIAN_3;
|
|
|
|
|
|
//消防用水监测系统
|
|
var xfys_zs = _data.SHUI_1 + _data.SHUI_2 + _data.SHUI_3;
|
|
sbzs = sbzs + xfys_zs;
|
|
sbzc = sbzc + _data.SHUI_1;
|
|
sbbj = sbbj + _data.SHUI_2;
|
|
sblx = sblx + _data.SHUI_3;
|
|
|
|
//可燃气
|
|
var krq_zs = _data.KRQ_1 + _data.KRQ_2 + _data.KRQ_3;
|
|
sbzs = sbzs + krq_zs;
|
|
sbzc = sbzc + _data.KRQ_1;
|
|
sbbj = sbbj + _data.KRQ_2;
|
|
sblx = sblx + _data.KRQ_3;
|
|
//独立式烟雾探测系统
|
|
var yg_zs = _data.YG_1 + _data.YG_2 + _data.YG_3;
|
|
sbzs = sbzs + yg_zs;
|
|
sbzc = sbzc + _data.YG_1;
|
|
sbbj = sbbj + _data.YG_2;
|
|
sblx = sblx + _data.YG_3;
|
|
|
|
//设备运行情况数量赋值
|
|
//总数
|
|
var _zxl = (sbzs == 0 ? "0.0" : ((sbzs - sblx) / sbzs * 100).toFixed(1));
|
|
$("#ZS_1").html(sbzs);
|
|
$("#ZS_2").html(sbzc);
|
|
$("#ZS_3").html(sblx);
|
|
//智慧用电
|
|
$("#DIAN_1").html(dian_zs);
|
|
$("#DIAN_2").html(_data.DIAN_1);
|
|
$("#DIAN_3").html(_data.DIAN_3);
|
|
$("#DIAN_4").html(dian_zs == 0 ? "0.0" : ((dian_zs - _data.DIAN_3) / dian_zs * 100).toFixed(1));
|
|
|
|
//消防用水
|
|
$("#XFSC_1").html(xfys_zs);
|
|
$("#XFSC_2").html(_data.SHUI_1);
|
|
$("#XFSC_3").html(_data.SHUI_3);
|
|
$("#XFSC_4").html(xfys_zs == 0 ? "0.0" : ((xfys_zs - _data.SHUI_3) / xfys_zs * 100).toFixed(1));
|
|
//独立烟感
|
|
$("#YG_1").html(yg_zs);
|
|
$("#YG_2").html(_data.YG_1);
|
|
$("#YG_3").html(_data.YG_3);
|
|
$("#YG_4").html(yg_zs == 0 ? "0.0" : ((yg_zs - _data.YG_3) / yg_zs * 100).toFixed(1));
|
|
//可燃气
|
|
$("#KRQ_1").html(krq_zs);
|
|
$("#KRQ_2").html(_data.KRQ_1);
|
|
$("#KRQ_3").html(_data.KRQ_3);
|
|
$("#KRQ_4").html(krq_zs == 0 ? "0.0" : ((krq_zs - _data.KRQ_3) / krq_zs * 100).toFixed(1));
|
|
|
|
//报警信息
|
|
|
|
//电
|
|
var dian_bj = 0;
|
|
//水
|
|
var shui_bj = 0;
|
|
//烟感
|
|
var yg_bj = 0;
|
|
//可燃气
|
|
var krq_bj = 0;
|
|
|
|
//总计
|
|
var zj = 0;
|
|
//报警趋势统计
|
|
var _sj = new Array();
|
|
var _num = new Array();
|
|
|
|
for (var i = 0; i < data.data2.length; i++) {
|
|
var _bjsl = data.data2[i];
|
|
_sj.push(_bjsl.RIQI);
|
|
_num.push(_bjsl.ZJ);
|
|
zj += _bjsl.ZJ;
|
|
shui_bj += _bjsl.SYS01;
|
|
dian_bj += _bjsl.SYS02;
|
|
yg_bj += _bjsl.SYS03;
|
|
krq_bj += _bjsl.SYS04;
|
|
//将电和水的报警分项赋值全局变量传递给后台导出word pdf
|
|
data1_sydl += _bjsl.TYPE3;
|
|
data1_wd += _bjsl.TYPE4;
|
|
data1_dl += _bjsl.TYPE2;
|
|
data1_dy += _bjsl.TYPE1;
|
|
data1_yy += _bjsl.TYPE5;
|
|
data1_yw += _bjsl.TYPE6;
|
|
}
|
|
|
|
//全部报警
|
|
//var bjzs = dian_bj + shui_bj + yg_bj + krq_bj;
|
|
|
|
$("#bj_zs").html(zj);
|
|
$("#dian_bj").html(dian_bj);
|
|
$("#shui_bj").html(shui_bj);
|
|
$("#yg_bj").html(yg_bj);
|
|
$("#krq_bj").html(krq_bj);
|
|
|
|
var max_bj = 0;
|
|
var max_name = "";
|
|
|
|
var arrNum = new Array();
|
|
arrNum.push(dian_bj);
|
|
arrNum.push(shui_bj);
|
|
arrNum.push(yg_bj);
|
|
arrNum.push(krq_bj);
|
|
|
|
var arrName = new Array();
|
|
arrName.push("电气火灾监测系统");
|
|
arrName.push("建筑消防用水报警");
|
|
arrName.push("烟感报警");
|
|
arrName.push("可燃气体");
|
|
|
|
if (zj != 0) {//如果报警次数为0 则不比较
|
|
for (var i = 0; i < arrNum.length; i++) {
|
|
if (arrNum[i] > max_bj) {
|
|
max_bj = arrNum[i];
|
|
max_name = arrName[i];
|
|
}
|
|
}
|
|
$("#max_des").show();
|
|
$("#max_name").html(max_name);
|
|
} else {
|
|
$("#max_des").hide();
|
|
}
|
|
|
|
//报警类别统计
|
|
bdataEchars1("1", "bjlb", max_bj, arrNum);
|
|
|
|
/* var _data3 = data.data3;
|
|
|
|
for(var i=0;i<_data3.length;i++){
|
|
_sj.push(_data3[i].RIQI);
|
|
_num.push(_data3[i].NUM);
|
|
} */
|
|
console.log(_sj)
|
|
console.log(_num)
|
|
bdataEchars2("1", "bjqstj", _sj, _num);
|
|
|
|
//1、电气火灾隐患预警监测报告
|
|
$("#bj_zs1").html(dian_bj);
|
|
|
|
//报警次数柱状图
|
|
var dian_arrNum = new Array();
|
|
dian_arrNum.push(data1_sydl);
|
|
dian_arrNum.push(data1_wd);
|
|
dian_arrNum.push(data1_dl);
|
|
dian_arrNum.push(data1_dy);
|
|
bdataEchars3("1", "dqbjcs", dian_arrNum);
|
|
|
|
//2、建筑消防用水监测报告
|
|
console.log(data1_yy + ":" + data1_yw)
|
|
$("#bj_zs2").html(shui_bj);
|
|
$("#yy_bj").html(data1_yy);
|
|
$("#yw_bj").html(data1_yw);
|
|
|
|
//3、独立烟感监测系统监测报告
|
|
$("#bj_zs3").html(yg_bj);
|
|
|
|
//4、可燃气体监测系统监测报告
|
|
$("#bj_zs4").html(krq_bj);
|
|
|
|
//报警设备数量分析 没有就不显示
|
|
if (data.data4.length > 0) {
|
|
//循环添加设备
|
|
var dian_value = new Array();//电
|
|
var dian_name = new Array();//电 设备名称
|
|
var dian_num = 0;//电 报警数量
|
|
var shui_value = new Array();//水
|
|
var shui_name = new Array();//水 设备名称
|
|
var shui_num = 0;//水 报警数量
|
|
var yg_value = new Array();//烟感
|
|
var yg_name = new Array();//烟感 设备名称
|
|
var yg_num = 0;//烟感 报警数量
|
|
var krq_value = new Array();//可燃气
|
|
var krq_name = new Array();//可燃气 设备名称
|
|
var krq_num = 0;//可燃气 报警数量
|
|
|
|
for (var i = 0; i < data.data4.length; i++) {
|
|
var _temp = data.data4[i];
|
|
if (_temp.SYS_ID == "02") {
|
|
dian_value.push(_temp.NUM);
|
|
dian_name.push(_temp.DEVICE_NAME + "(" + _temp.ADDR + ")");
|
|
bdataEchars4("1", "dq-bjsbfx", objArrtransArr(dian_name, dian_value));
|
|
}
|
|
if (_temp.SYS_ID == "01") {
|
|
shui_value.push(_temp.NUM);
|
|
shui_name.push(_temp.DEVICE_NAME + "(" + _temp.ADDR + ")");
|
|
bdataEchars4("1", "xfs-bjsbfx", objArrtransArr(shui_name, shui_value));
|
|
}
|
|
if (_temp.SYS_ID == "03") {
|
|
yg_value.push(_temp.NUM);
|
|
yg_name.push(_temp.DEVICE_NAME + "(" + _temp.ADDR + ")");
|
|
bdataEchars4("1", "yg-bjsbfx", objArrtransArr(yg_name, yg_value));
|
|
}
|
|
if (_temp.SYS_ID == "04") {
|
|
krq_value.push(_temp.NUM);
|
|
krq_name.push(_temp.DEVICE_NAME + "(" + _temp.ADDR + ")");
|
|
bdataEchars4("1", "krqt-bjsbfx", objArrtransArr(krq_name, krq_value));
|
|
}
|
|
}
|
|
|
|
//报警设备数量 报警数量
|
|
//电
|
|
$("#bj_num1").html(_data.DIAN_2);
|
|
//水
|
|
$("#bj_num2").html(_data.SHUI_2);
|
|
//烟感
|
|
$("#bj_num3").html(_data.YG_2);
|
|
//可燃气
|
|
$("#bj_num4").html(_data.KRQ_2);
|
|
}
|
|
var v = ["01", "02", "03", "04", "05", "06", "07", "08", "09", "10", "11", "12", "13", "14", "15", "16", "17", "18", "19", "20", "21", "22", "23", "24"];
|
|
var t = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0];
|
|
bdataEchars5("1", "dq-bjsjdfx", v, t);
|
|
bdataEchars5("1", "xfs-bjsjdfx", v, t);
|
|
bdataEchars5("1", "yg-bjsjdfx", v, t);
|
|
bdataEchars5("1", "krqt-bjsjdfx", v, t);
|
|
bdataEchars4("1", "dq-bjsbfx");
|
|
bdataEchars4("1", "xfs-bjsbfx");
|
|
bdataEchars4("1", "yg-bjsbfx");
|
|
bdataEchars4("1", "krqt-bjsbfx");
|
|
|
|
//报警时间段分析 没有就显示0
|
|
if (data.data3.length > 0) {
|
|
//循环添加数据
|
|
var dian_value = new Array();//电
|
|
var dian_name = new Array();//电 设备名称
|
|
var shui_value = new Array();//水
|
|
var shui_name = new Array();//水 设备名称
|
|
var yg_value = new Array();//烟感
|
|
var yg_name = new Array();//烟感 设备名称
|
|
var krq_value = new Array();//可燃气
|
|
var krq_name = new Array();//可燃气 设备名称
|
|
for (var i = 0; i < data.data3.length; i++) {
|
|
var _temp = data.data3[i];
|
|
if (_temp.SYS_ID == "02") {
|
|
delete _temp.SYS_ID;
|
|
var max = _temp.HH01;
|
|
var maxi = "";
|
|
for (let mm in _temp) {
|
|
if (max < _temp[mm]) {
|
|
max = _temp[mm];
|
|
maxi = mm.slice(2);
|
|
}
|
|
dian_value.push(_temp[mm]);
|
|
dian_name.push(mm.slice(2));
|
|
}
|
|
$("#dian_time").html(maxi);
|
|
bdataEchars5("1", "dq-bjsjdfx", dian_name, dian_value);
|
|
}
|
|
if (_temp.SYS_ID == "01") {
|
|
//shui_value.push(_temp.NUM);
|
|
delete _temp.SYS_ID;
|
|
var max = _temp.HH01;
|
|
var maxi = "";
|
|
for (let mm in _temp) {
|
|
if (max < _temp[mm]) {
|
|
max = _temp[mm];
|
|
maxi = mm.slice(2);
|
|
}
|
|
shui_value.push(_temp[mm]);
|
|
shui_name.push(mm.slice(2));
|
|
}
|
|
$("#shui_time").html(maxi);
|
|
bdataEchars5("1", "xfs-bjsjdfx", shui_name, shui_value);
|
|
}
|
|
if (_temp.SYS_ID == "03") {
|
|
//yg_value.push(_temp.NUM);
|
|
delete _temp.SYS_ID;
|
|
var max = _temp.HH01;
|
|
var maxi = "";
|
|
for (let mm in _temp) {
|
|
if (max < _temp[mm]) {
|
|
max = _temp[mm];
|
|
maxi = mm.slice(2);
|
|
}
|
|
yg_value.push(_temp[mm]);
|
|
yg_name.push(mm.slice(2));
|
|
}
|
|
$("#yg_time").html(maxi);
|
|
bdataEchars5("1", "yg-bjsjdfx", yg_name, yg_value);
|
|
}
|
|
if (_temp.S == "04") {
|
|
//krq_value.push(_temp.NUM);
|
|
delete _temp.SYS_ID;
|
|
var max = _temp.HH01;
|
|
var maxi = "";
|
|
for (let mm in _temp) {
|
|
if (max < _temp[mm]) {
|
|
max = _temp[mm];
|
|
maxi = mm.slice(2);
|
|
}
|
|
krq_value.push(_temp[mm]);
|
|
krq_name.push(mm.slice(2));
|
|
}
|
|
$("#krq_time").html(maxi);
|
|
bdataEchars5("1", "krqt-bjsjdfx", krq_name, krq_value);
|
|
}
|
|
}
|
|
|
|
}
|
|
|
|
|
|
//六、报告结论
|
|
$("#zxl").html(_zxl);//在线率
|
|
var _yxql = "";
|
|
if (_zxl >= 80) {
|
|
_yxql = "良好";
|
|
} else if (_zxl >= 60 && _zxl < 80) {
|
|
_yxql = "一般";
|
|
} else if (_zxl < 60) {
|
|
_yxql = "较差";
|
|
}
|
|
$("#yxqk").html(_yxql);//运行情况
|
|
$("#ljbj").html(zj);//累计报警
|
|
}
|
|
});
|
|
//确保(ajax1, ajax2两个请求完毕时执行
|
|
$.when(ajax1, ajax2).done(function () {
|
|
layer.close(loading);
|
|
});
|
|
}
|
|
|
|
//获取本周、本月、本季度、本年的第一天
|
|
var timeUtil = {
|
|
|
|
getFirstDayOfWeek: function (AddWeekCount) {
|
|
/**
|
|
* 获得相对当前周AddWeekCount个周的起止日期
|
|
* AddWeekCount为0代表当前周 为-1代表上一个周 为1代表下一个周以此类推
|
|
* **/
|
|
AddWeekCount = 0;
|
|
//一天的毫秒数
|
|
var millisecond = 1000 * 60 * 60 * 24;
|
|
//获取当前时间
|
|
var currentDate = new Date();
|
|
//相对于当前日期AddWeekCount个周的日期
|
|
currentDate = new Date(currentDate.getTime() + (millisecond * 7 * AddWeekCount));
|
|
//返回date是一周中的某一天
|
|
var week = currentDate.getDay();
|
|
//返回date是一个月中的某一天
|
|
var month = currentDate.getDate();
|
|
//减去的天数
|
|
var minusDay = week != 0 ? week - 1 : 6;
|
|
//获得当前周的第一天
|
|
var currentWeekFirstDay = new Date(currentDate.getTime() - (millisecond * minusDay));
|
|
//获得当前周的最后一天
|
|
var currentWeekLastDay = new Date(currentWeekFirstDay.getTime() + (millisecond * 6));
|
|
|
|
return this.timeFormate(currentWeekFirstDay);
|
|
},
|
|
|
|
//获取本月第一天
|
|
getFirstDayOfMonth: function () {
|
|
|
|
var now = new Date();
|
|
var day = now.setDate(1);
|
|
|
|
return this.timeFormate(now);
|
|
},
|
|
|
|
//获取本季度第一天
|
|
getFirstDayOfQuarter: function () {
|
|
var now = new Date();
|
|
var month = now.getMonth();
|
|
if (month < 3) {
|
|
now.setMonth(0);
|
|
} else if (2 < month && month < 6) {
|
|
now.setMonth(3);
|
|
} else if (5 < month && month < 9) {
|
|
now.setMonth(6);
|
|
} else if (8 < month && month < 11) {
|
|
now.setMonth(9);
|
|
}
|
|
now.setDate(1);
|
|
return this.timeFormate(now);
|
|
},
|
|
|
|
//获取本年第一天
|
|
getFirstDayOfYear: function () {
|
|
var now = new Date();
|
|
now.setMonth(0);
|
|
now.setDate(1);
|
|
return this.timeFormate(now);
|
|
},
|
|
|
|
//时间格式化
|
|
timeFormate: function (date) {
|
|
if (!date || typeof (date) === "string") {
|
|
this.error("参数异常,请检查...");
|
|
}
|
|
var year = date.getFullYear(); //年
|
|
var month = date.getMonth() + 1; //月
|
|
var day = date.getDate(); //日
|
|
|
|
if (date.getMinutes() / 60 > 1) {
|
|
hh += Math.floor(date.getMinutes()) / 60;
|
|
}
|
|
var clock = year + "-";
|
|
if (month < 10)
|
|
clock += "0";
|
|
clock += month + "-";
|
|
if (day < 10)
|
|
clock += "0";
|
|
clock += day + " ";
|
|
return clock;
|
|
},
|
|
|
|
//获取当前日期yy-mm-dd
|
|
//date 为时间对象
|
|
getDateStr3: function (date) {
|
|
var year = "";
|
|
var month = "";
|
|
var day = "";
|
|
var now = date;
|
|
year = "" + now.getFullYear();
|
|
if ((now.getMonth() + 1) < 10) {
|
|
month = "0" + (now.getMonth() + 1);
|
|
} else {
|
|
month = "" + (now.getMonth() + 1);
|
|
}
|
|
if ((now.getDate()) < 10) {
|
|
day = "0" + (now.getDate());
|
|
} else {
|
|
day = "" + (now.getDate());
|
|
}
|
|
return year + "-" + month + "-" + day;
|
|
}
|
|
}
|
|
|
|
$("#exportToWord").click(function () {
|
|
$("#exportToWord").attr({"disabled": "disabled"});
|
|
$("#exportToWord").attr({"class": "layui-btn layui-btn-disabled"});
|
|
//获得echarts图片base64格式
|
|
var filePath = "";
|
|
//console.log("export1="+JSON.stringify(dataJson1));
|
|
//console.log("export2="+JSON.stringify(dataJson2));
|
|
$.ajax({
|
|
type: "post",
|
|
url: "${ctx}/bdata/cls1/exportWord",
|
|
data: {
|
|
socName: data1_socName,
|
|
socProp: data1_socProp,
|
|
socLevel: data1_socLevel,
|
|
socIsrisk: data1_socIsrisk,
|
|
regionVals: data1_regionVals,
|
|
socAddr: data1_socAddr,
|
|
socInd: data1_socInd,
|
|
socClass: data1_socClass,
|
|
m1: data1_m1,
|
|
m2: data1_m2,
|
|
m3: data1_m3,
|
|
messageNum: data1_messageNum,
|
|
voiceNum: data1_voiceNum,
|
|
sbzs: $("#ZS_1").html(),
|
|
sbzc: $("#ZS_2").html(),
|
|
sblx: $("#ZS_3").html(),
|
|
zxl: $("#zxl").html(),
|
|
dianzs: $("#DIAN_1").html(),
|
|
dianzc: $("#DIAN_2").html(),
|
|
dianlx: $("#DIAN_3").html(),
|
|
dianzxl: $("#DIAN_4").html(),
|
|
shuizs: $("#XFSC_1").html(),
|
|
shuizc: $("#XFSC_2").html(),
|
|
shuilx: $("#XFSC_3").html(),
|
|
shuizxl: $("#XFSC_4").html(),
|
|
ygzs: $("#YG_1").html(),
|
|
ygzc: $("#YG_2").html(),
|
|
yglx: $("#YG_3").html(),
|
|
ygzxl: $("#YG_4").html(),
|
|
krqzs: $("#KRQ_1").html(),
|
|
krqzc: $("#KRQ_2").html(),
|
|
krqlx: $("#KRQ_3").html(),
|
|
krqzxl: $("#KRQ_4").html(),
|
|
bjzs: $("#bj_zs").html(),
|
|
dianbj: $("#dian_bj").html(),
|
|
shuibj: $("#shui_bj").html(),
|
|
ygbj: $("#yg_bj").html(),
|
|
krqbj: $("#krq_bj").html(),
|
|
sydl: data1_sydl,
|
|
wd: data1_wd,
|
|
dl: data1_dl,
|
|
dy: data1_dy,
|
|
yy: data1_yy,
|
|
yw: data1_yw,
|
|
bjmaxname: $("#max_name").html(),
|
|
timemax1: $("#dian_time").html(),
|
|
timemax2: $("#shui_time").html(),
|
|
timemax3: $("#yg_time").html(),
|
|
timemax4: $("#krq_time").html(),
|
|
yxqk: $("#yxqk").html(),
|
|
score: $("#soc_score").html(),
|
|
level: $("#soc_level").html(),
|
|
data2: JSON.stringify(dataJson2),
|
|
beginDate: $("#data_1_01_beginDate").val(),
|
|
endDate: $("#data_1_01_endDate").val(),
|
|
echarts1: getImage("bjlb"),
|
|
echarts2: getImage("bjqstj"),
|
|
echarts3: getImage("dq-bjsjdfx"),
|
|
echarts4: getImage("xfs-bjsjdfx"),
|
|
echarts5: getImage("yg-bjsjdfx"),
|
|
echarts6: getImage("krqt-bjsjdfx")
|
|
},
|
|
async: false,
|
|
success: function (data) {
|
|
console.log(data);
|
|
filePath = data;
|
|
}
|
|
});
|
|
window.location.href = "${ctx}/bdata/downloadFile?filePath=" + encodeURI(encodeURI(filePath));
|
|
});
|
|
|
|
$("#exportToPdf").click(function () {
|
|
$("#exportToPdf").attr({"disabled": "disabled"});
|
|
$("#exportToPdf").attr({"class": "layui-btn layui-btn-disabled"});
|
|
//获得echarts图片base64格式
|
|
var filePath = "";
|
|
//console.log("export1="+JSON.stringify(dataJson1));
|
|
//console.log("export2="+JSON.stringify(dataJson2));
|
|
$.ajax({
|
|
type: "post",
|
|
url: "${ctx}/bdata/cls1/exportPdf",
|
|
data: {
|
|
socName: data1_socName,
|
|
socProp: data1_socProp,
|
|
socLevel: data1_socLevel,
|
|
socIsrisk: data1_socIsrisk,
|
|
regionVals: data1_regionVals,
|
|
socAddr: data1_socAddr,
|
|
socInd: data1_socInd,
|
|
socClass: data1_socClass,
|
|
m1: data1_m1,
|
|
m2: data1_m2,
|
|
m3: data1_m3,
|
|
messageNum: data1_messageNum,
|
|
voiceNum: data1_voiceNum,
|
|
sbzs: $("#ZS_1").html(),
|
|
sbzc: $("#ZS_2").html(),
|
|
sblx: $("#ZS_3").html(),
|
|
zxl: $("#zxl").html(),
|
|
dianzs: $("#DIAN_1").html(),
|
|
dianzc: $("#DIAN_2").html(),
|
|
dianlx: $("#DIAN_3").html(),
|
|
dianzxl: $("#DIAN_4").html(),
|
|
shuizs: $("#XFSC_1").html(),
|
|
shuizc: $("#XFSC_2").html(),
|
|
shuilx: $("#XFSC_3").html(),
|
|
shuizxl: $("#XFSC_4").html(),
|
|
ygzs: $("#YG_1").html(),
|
|
ygzc: $("#YG_2").html(),
|
|
yglx: $("#YG_3").html(),
|
|
ygzxl: $("#YG_4").html(),
|
|
krqzs: $("#KRQ_1").html(),
|
|
krqzc: $("#KRQ_2").html(),
|
|
krqlx: $("#KRQ_3").html(),
|
|
krqzxl: $("#KRQ_4").html(),
|
|
bjzs: $("#bj_zs").html(),
|
|
dianbj: $("#dian_bj").html(),
|
|
shuibj: $("#shui_bj").html(),
|
|
ygbj: $("#yg_bj").html(),
|
|
krqbj: $("#krq_bj").html(),
|
|
sydl: data1_sydl,
|
|
wd: data1_wd,
|
|
dl: data1_dl,
|
|
dy: data1_dy,
|
|
yy: data1_yy,
|
|
yw: data1_yw,
|
|
bjmaxname: $("#max_name").html(),
|
|
timemax1: $("#dian_time").html(),
|
|
timemax2: $("#shui_time").html(),
|
|
timemax3: $("#yg_time").html(),
|
|
timemax4: $("#krq_time").html(),
|
|
yxqk: $("#yxqk").html(),
|
|
score: $("#soc_score").html(),
|
|
level: $("#soc_level").html(),
|
|
data2: JSON.stringify(dataJson2),
|
|
beginDate: $("#data_1_01_beginDate").val(),
|
|
endDate: $("#data_1_01_endDate").val(),
|
|
echarts1: getImage("bjlb"),
|
|
echarts2: getImage("bjqstj"),
|
|
echarts3: getImage("dq-bjsjdfx"),
|
|
echarts4: getImage("xfs-bjsjdfx"),
|
|
echarts5: getImage("yg-bjsjdfx"),
|
|
echarts6: getImage("krqt-bjsjdfx")
|
|
},
|
|
async: false,
|
|
success: function (data) {
|
|
filePath = data;
|
|
}
|
|
});
|
|
window.location.href = "${ctx}/bdata/downloadFile?filePath=" + encodeURI(encodeURI(filePath));
|
|
});
|
|
|
|
//取出echarts图形的base64位字符
|
|
function getImage(id) {
|
|
//将第一个画布作为基准。
|
|
var baseCanvas = $("#" + id).find("canvas").first()[0];
|
|
if (!baseCanvas) {
|
|
return false;
|
|
}
|
|
;
|
|
var width = baseCanvas.width;
|
|
var height = baseCanvas.height;
|
|
var ctx = baseCanvas.getContext("2d");
|
|
//遍历,将后续的画布添加到在第一个上
|
|
$("#" + id).find("canvas").each(function (i, canvasObj) {
|
|
if (i > 0) {
|
|
var canvasTmp = $(canvasObj)[0];
|
|
ctx.drawImage(canvasTmp, 0, 0, width, height);
|
|
}
|
|
});
|
|
//获取base64位的url
|
|
//console.log(baseCanvas.toDataURL());
|
|
var image = baseCanvas.toDataURL().split(",")[1];
|
|
return image;
|
|
}
|
|
|
|
//数组转化方法
|
|
function objArrtransArr(name, value) {
|
|
const newArr = [];
|
|
for (var i = 0; i < name.length; i++) {
|
|
// 定义数组内部对象形式
|
|
let obj = {};
|
|
obj.name = name[i];
|
|
obj.value = value[i];
|
|
// 将对象数据推到数组中
|
|
newArr.push(obj);
|
|
}
|
|
return newArr;
|
|
}
|
|
|
|
//报警类别统计
|
|
var bdataEchars1 = function (t, pdiv) {
|
|
var option = {
|
|
tooltip: {},
|
|
legend: {
|
|
show: true,
|
|
icon: "circle",
|
|
bottom: 30,
|
|
center: 0,
|
|
itemWidth: 14,
|
|
itemHeight: 14,
|
|
shadowColor: 'rgba(0, 0, 0, 1)',
|
|
shadowBlur: 30,
|
|
shadowOffsetX: 10,
|
|
shadowOffsetY: 10,
|
|
// itemGap: 30,
|
|
orient: "horizontal",
|
|
data: ['报警类别'],
|
|
textStyle: {
|
|
fontSize: 14,
|
|
color: '#fff'
|
|
},
|
|
},
|
|
|
|
radar: {
|
|
// shape: 'circle',
|
|
radius: '75%',
|
|
center: ['50%', '50%'],
|
|
startAngle: 0,
|
|
triggerEvent: true,
|
|
name: {
|
|
textStyle: {
|
|
color: '#b5e0ff',
|
|
fontSize: '14',
|
|
borderRadius: 3,
|
|
padding: [3, 5]
|
|
}
|
|
},
|
|
nameGap: '2',
|
|
indicator: [{
|
|
name: '电气火灾',
|
|
max: arguments[2]
|
|
},
|
|
{
|
|
name: '消防用水',
|
|
max: arguments[2]
|
|
},
|
|
{
|
|
name: '烟感',
|
|
max: arguments[2]
|
|
},
|
|
{
|
|
name: '可燃气体',
|
|
max: arguments[2]
|
|
}
|
|
],
|
|
splitArea: {
|
|
areaStyle: {
|
|
color: [
|
|
'rgba(0,255,255, 0.1)', 'rgba(0,255,255, 0.2)',
|
|
'rgba(0,255,255, 0.3)', 'rgba(0,255,255, 0.4)',
|
|
'rgba(0,255,255, 0.5)', 'rgba(0,255,255, 0.6)',
|
|
].reverse(),
|
|
shadowColor: 'rgba(0, 0, 0, 1)',
|
|
shadowBlur: 30,
|
|
shadowOffsetX: 10,
|
|
shadowOffsetY: 10
|
|
}
|
|
},
|
|
axisLine: {
|
|
lineStyle: {
|
|
color: 'rgba(0,206,209, 0.3)'
|
|
}
|
|
},
|
|
splitLine: {
|
|
lineStyle: {
|
|
width: 1,
|
|
color: [
|
|
'rgba(0,206,209, 0.1)', 'rgba(0,206,209, 0.2)',
|
|
'rgba(0,206,209, 0.3)', 'rgba(0,206,209, 0.4)',
|
|
'rgba(0,206,209, 0.5)', 'rgba(0,206,209, 0.6)'
|
|
].reverse()
|
|
}
|
|
}
|
|
|
|
},
|
|
series: [{
|
|
name: '报警次数',
|
|
type: 'radar',
|
|
areaStyle: {
|
|
normal: {
|
|
color: 'rgba(127,255,210, 0.5)'
|
|
}
|
|
},
|
|
symbol: 'circle',
|
|
symbolSize: 12,
|
|
itemStyle: {
|
|
color: 'rgba(127,255,210,0.8)',
|
|
borderColor: 'rgba(127,255,210,0.2)',
|
|
borderWidth: 10,
|
|
},
|
|
lineStyle: {
|
|
color: 'rgba(127,255,210, 0.6)',
|
|
width: 2
|
|
},
|
|
label: {
|
|
show: true,
|
|
},
|
|
data: [
|
|
arguments[3]
|
|
]
|
|
}]
|
|
}
|
|
//使用刚指定的配置项和数据显示图表。
|
|
echarts.init($("#" + pdiv).get(0)).setOption(option);
|
|
}
|
|
|
|
var bdataEchars2 = function (t, pdiv) {
|
|
|
|
// 指定图表的配置项和数据
|
|
var option = {
|
|
tooltip: {
|
|
trigger: 'axis',
|
|
axisPointer: {
|
|
lineStyle: {
|
|
color: '#155895'
|
|
}
|
|
}
|
|
},
|
|
grid: {
|
|
left: '1%',
|
|
right: '1%',
|
|
bottom: '1%',
|
|
top: '20%',
|
|
containLabel: true
|
|
},
|
|
xAxis: [{
|
|
type: 'category',
|
|
boundaryGap: false,
|
|
axisLine: {
|
|
lineStyle: {
|
|
color: '#155895'
|
|
}
|
|
},
|
|
axisLabel: {
|
|
margin: 10,
|
|
textStyle: {
|
|
fontSize: 14,
|
|
color: '#b5e0ff'
|
|
}
|
|
},
|
|
data: arguments[2]
|
|
}],
|
|
yAxis: [{
|
|
type: 'value',
|
|
name: '次数',
|
|
nameTextStyle: {
|
|
color: "#b5e0ff"
|
|
},
|
|
axisTick: {
|
|
show: false
|
|
},
|
|
axisLine: {
|
|
lineStyle: {
|
|
color: '#155895'
|
|
}
|
|
},
|
|
axisLabel: {
|
|
margin: 10,
|
|
textStyle: {
|
|
fontSize: 14,
|
|
color: '#b5e0ff'
|
|
}
|
|
},
|
|
splitLine: {
|
|
show: true,
|
|
lineStyle: {
|
|
color: '#155895'
|
|
}
|
|
},
|
|
}],
|
|
series: [{
|
|
name: '报警次数',
|
|
type: 'line',
|
|
symbolSize: 5,
|
|
data: arguments[3],
|
|
areaStyle: {
|
|
normal: {
|
|
color: new echarts.graphic.LinearGradient(0, 0, 0, 1, [{
|
|
offset: 0,
|
|
color: 'rgba(61, 205, 249, 0.9)'
|
|
}, {
|
|
offset: 0.8,
|
|
color: 'rgba(61, 205, 249, 0.1)'
|
|
}], false),
|
|
shadowColor: 'rgba(0, 0, 0, 0.1)',
|
|
shadowBlur: 10
|
|
}
|
|
},
|
|
itemStyle: {
|
|
normal: {
|
|
color: 'rgb(61, 205, 249)',
|
|
borderWidth: 1
|
|
}
|
|
},
|
|
}]
|
|
};
|
|
//使用刚指定的配置项和数据显示图表。
|
|
echarts.init($("#" + pdiv).get(0)).setOption(option);
|
|
}
|
|
|
|
var bdataEchars3 = function (t, pdiv) {
|
|
var option = {
|
|
grid: {
|
|
top: '15%',
|
|
right: '10%',
|
|
left: '10%',
|
|
bottom: '12%'
|
|
},
|
|
xAxis: [{
|
|
type: 'category',
|
|
color: '#59588D',
|
|
data: ['漏电电流报警', '线缆温度报警', '电流报警', '电压报警'],
|
|
axisLabel: {
|
|
margin: 10,
|
|
color: '#b5e0ff',
|
|
textStyle: {
|
|
fontSize: 14
|
|
},
|
|
},
|
|
axisLine: {
|
|
lineStyle: {
|
|
color: '#155895',
|
|
}
|
|
},
|
|
axisTick: {
|
|
show: false
|
|
},
|
|
}],
|
|
yAxis: [{
|
|
name: '次数',
|
|
nameTextStyle: {
|
|
color: "#b5e0ff"
|
|
},
|
|
min: 0,
|
|
axisLabel: {
|
|
formatter: '{value}',
|
|
color: '#b5e0ff',
|
|
textStyle: {
|
|
fontSize: 14
|
|
},
|
|
},
|
|
axisLine: {
|
|
lineStyle: {
|
|
color: '#155895',
|
|
}
|
|
},
|
|
axisTick: {
|
|
show: false
|
|
},
|
|
splitLine: {
|
|
lineStyle: {
|
|
color: '#155895',
|
|
type: 'dashed',
|
|
}
|
|
}
|
|
}],
|
|
series: [{
|
|
type: 'bar',
|
|
data: arguments[2],
|
|
barWidth: '30px',
|
|
itemStyle: {
|
|
normal: {
|
|
color: new echarts.graphic.LinearGradient(0, 0, 0, 1, [{
|
|
offset: 0,
|
|
color: '#15baf0' // 0% 处的颜色
|
|
}, {
|
|
offset: 1,
|
|
color: '#1573ff' // 100% 处的颜色
|
|
}], false),
|
|
barBorderRadius: [3, 3, 0, 0],
|
|
}
|
|
},
|
|
label: {
|
|
show: true,
|
|
fontSize: 14,
|
|
position: 'top',
|
|
color: '#b5e0ff',
|
|
|
|
}
|
|
}]
|
|
};
|
|
//使用刚指定的配置项和数据显示图表。
|
|
echarts.init($("#" + pdiv).get(0)).setOption(option);
|
|
}
|
|
|
|
var bdataEchars4 = function (t, pdiv) {
|
|
var option = {
|
|
title: {
|
|
text: '报警设备分析',
|
|
textAlign: "center",
|
|
left: "50%",
|
|
textStyle: {
|
|
color: '#fff',
|
|
fontSize: 18,
|
|
fontWeight: 'normal'
|
|
}
|
|
},
|
|
grid: {
|
|
left: '20%',
|
|
},
|
|
legend: {
|
|
show: true,
|
|
data: arguments[2],
|
|
left: '30%',
|
|
right: '6%',
|
|
bottom: '0%',
|
|
textStyle: {
|
|
color: '#b2d6ff',
|
|
fontsize: 12
|
|
},
|
|
itemWidth: 15,
|
|
itemHeight: 6
|
|
},
|
|
color: ['#2fa9ff', '#ac60f6', '#fecf52', '#64dbfb', '#e4f467'],
|
|
series: [{
|
|
color: ['#2fa9ff', '#ac60f6', '#fecf52', '#64dbfb', '#e4f467'],
|
|
type: 'pie',
|
|
radius: ['18%', '56%'],
|
|
labelLine: {
|
|
normal: {
|
|
length: 15,
|
|
length2: 40,
|
|
lineStyle: {
|
|
type: 'solid'
|
|
}
|
|
}
|
|
|
|
},
|
|
label: {
|
|
normal: {
|
|
formatter: (params) => {
|
|
//console.log(params);
|
|
return '{c|' + params.percent.toFixed(0) + '}'
|
|
},
|
|
borderWidth: 0,
|
|
borderRadius: 4,
|
|
padding: [0, -20],
|
|
height: 40,
|
|
fontSize: 13,
|
|
align: 'center',
|
|
color: '#b2d6ff',
|
|
rich: {
|
|
c: {
|
|
fontSize: 14,
|
|
lineHeight: 20,
|
|
color: '#b2d6ff'
|
|
}
|
|
|
|
}
|
|
}
|
|
},
|
|
data: arguments[2]
|
|
},
|
|
{
|
|
type: 'pie',
|
|
radius: ['64%', '65%'],
|
|
data: [100],
|
|
label: {
|
|
show: false
|
|
}
|
|
},
|
|
{
|
|
type: 'pie',
|
|
radius: ['10%', '11%'],
|
|
data: [100],
|
|
label: {
|
|
show: false
|
|
}
|
|
}
|
|
]
|
|
};
|
|
//使用刚指定的配置项和数据显示图表。
|
|
echarts.init($("#" + pdiv).get(0)).setOption(option);
|
|
}
|
|
|
|
var bdataEchars5 = function (t, pdiv) {
|
|
|
|
// 指定图表的配置项和数据
|
|
var option = {
|
|
tooltip: {
|
|
trigger: 'axis',
|
|
axisPointer: {
|
|
lineStyle: {
|
|
color: '#155895'
|
|
}
|
|
}
|
|
},
|
|
grid: {
|
|
left: '1%',
|
|
right: '1%',
|
|
bottom: '1%',
|
|
top: '20%',
|
|
containLabel: true
|
|
},
|
|
xAxis: [{
|
|
type: 'category',
|
|
boundaryGap: false,
|
|
axisLine: {
|
|
lineStyle: {
|
|
color: '#155895'
|
|
}
|
|
},
|
|
axisLabel: {
|
|
margin: 10,
|
|
textStyle: {
|
|
fontSize: 14,
|
|
color: '#b5e0ff'
|
|
}
|
|
},
|
|
data: arguments[2]
|
|
}],
|
|
yAxis: [{
|
|
type: 'value',
|
|
name: '次数',
|
|
nameTextStyle: {
|
|
color: "#b5e0ff"
|
|
},
|
|
axisTick: {
|
|
show: false
|
|
},
|
|
axisLine: {
|
|
lineStyle: {
|
|
color: '#155895'
|
|
}
|
|
},
|
|
axisLabel: {
|
|
margin: 10,
|
|
textStyle: {
|
|
fontSize: 14,
|
|
color: '#b5e0ff'
|
|
}
|
|
},
|
|
splitLine: {
|
|
show: true,
|
|
lineStyle: {
|
|
color: '#155895'
|
|
}
|
|
},
|
|
}],
|
|
series: [{
|
|
name: '报警次数',
|
|
type: 'line',
|
|
symbolSize: 5,
|
|
data: arguments[3],
|
|
areaStyle: {
|
|
normal: {
|
|
color: new echarts.graphic.LinearGradient(0, 0, 0, 1, [{
|
|
offset: 0,
|
|
color: 'rgba(61, 205, 249, 0.9)'
|
|
}, {
|
|
offset: 0.8,
|
|
color: 'rgba(61, 205, 249, 0.1)'
|
|
}], false),
|
|
shadowColor: 'rgba(0, 0, 0, 0.1)',
|
|
shadowBlur: 10
|
|
}
|
|
},
|
|
itemStyle: {
|
|
normal: {
|
|
color: 'rgb(61, 205, 249)',
|
|
borderWidth: 1
|
|
}
|
|
},
|
|
}]
|
|
};
|
|
//使用刚指定的配置项和数据显示图表。
|
|
echarts.init($("#" + pdiv).get(0)).setOption(option);
|
|
}
|
|
|
|
</script>
|
|
</html>
|
|
|