999 lines
33 KiB
Plaintext
999 lines
33 KiB
Plaintext
|
|
<%@ page language="java" pageEncoding="UTF-8"%>
|
|||
|
|
<%@ taglib uri="http://java.sun.com/jstl/core_rt" prefix="c"%>
|
|||
|
|
<%@ taglib uri="http://java.sun.com/jsp/jstl/functions" prefix="fn"%>
|
|||
|
|
<%@ taglib uri="http://java.sun.com/jsp/jstl/fmt" prefix="fmt"%>
|
|||
|
|
<%@ page import="com.sipai.entity.base.ServerObject"%>
|
|||
|
|
<%@ taglib uri="http://www.springsecurity.org/jsp" prefix="security"%>
|
|||
|
|
<%@page import="com.sipai.entity.scada.MPoint"%>
|
|||
|
|
<%request.setAttribute("Flag_Enable",MPoint.Flag_Enable);%>
|
|||
|
|
<%request.setAttribute("Flag_Disable",MPoint.Flag_Disable);%>
|
|||
|
|
<!DOCTYPE html>
|
|||
|
|
<!-- <html lang="zh-CN"> -->
|
|||
|
|
<!-- BEGIN HEAD -->
|
|||
|
|
<head>
|
|||
|
|
<title><%= ServerObject.atttable.get("TOPTITLE")%></title>
|
|||
|
|
|
|||
|
|
<!-- 引用页头及CSS页-->
|
|||
|
|
<jsp:include page="/jsp/inc.jsp"></jsp:include>
|
|||
|
|
<style>
|
|||
|
|
.cont-left{
|
|||
|
|
height:960px;
|
|||
|
|
}
|
|||
|
|
.box-left {
|
|||
|
|
height:50%;
|
|||
|
|
padding:10px ;
|
|||
|
|
margin-bottom:0;
|
|||
|
|
}
|
|||
|
|
.box-left>.box-body>.row{
|
|||
|
|
height:45%;
|
|||
|
|
}
|
|||
|
|
.box-left>.box-body>.row>.col-md-3,
|
|||
|
|
.box-left>.box-body>.row>.col-md-2,
|
|||
|
|
.box-right-top>.box-body>.row>.col-md-12,
|
|||
|
|
.box-right-top>.box-body>.row>.col-md-6{
|
|||
|
|
height:100%;
|
|||
|
|
}
|
|||
|
|
.box-right-top>.box-body>.row{
|
|||
|
|
height:50%;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
.borderLine{
|
|||
|
|
margin:5px 10px;
|
|||
|
|
height: 1px;
|
|||
|
|
background:#e5e5e5;
|
|||
|
|
}
|
|||
|
|
.box-left-footer{
|
|||
|
|
height: 5px;
|
|||
|
|
margin: 0 10px;
|
|||
|
|
background: #eeeeee;
|
|||
|
|
}
|
|||
|
|
.box-tools-left{
|
|||
|
|
position: absolute;
|
|||
|
|
left: 100px;
|
|||
|
|
top: 8px;
|
|||
|
|
}
|
|||
|
|
.inspection-box-title{
|
|||
|
|
width: 83px;
|
|||
|
|
margin: auto;
|
|||
|
|
margin-top:5px;
|
|||
|
|
margin-bottom:5px;
|
|||
|
|
border: 1px solid #e5e5e5;
|
|||
|
|
border-radius: 4px;font-size: 14px;
|
|||
|
|
padding:5px 10px;
|
|||
|
|
font-family: MicrosoftYaHei, MicrosoftYaHei-Bold;
|
|||
|
|
font-weight: 700;
|
|||
|
|
line-height: 19px;
|
|||
|
|
letter-spacing: 1px;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
.box-right-top{
|
|||
|
|
height:590px;
|
|||
|
|
padding:10px ;
|
|||
|
|
}
|
|||
|
|
.box-right-bottom{
|
|||
|
|
height:360px;
|
|||
|
|
padding:10px ;
|
|||
|
|
}
|
|||
|
|
.box-middle >.box-body{
|
|||
|
|
padding-bottom: 0 ;
|
|||
|
|
}
|
|||
|
|
.box.box-white {
|
|||
|
|
border-top: 0;
|
|||
|
|
}
|
|||
|
|
.nowdt{
|
|||
|
|
font-size: 12px;
|
|||
|
|
font-weight:600;
|
|||
|
|
color:#EFA103;
|
|||
|
|
}
|
|||
|
|
.table>tbody>tr>td{
|
|||
|
|
vertical-align: middle;
|
|||
|
|
}
|
|||
|
|
.box-header .box-title{
|
|||
|
|
font-size: 16px;
|
|||
|
|
font-family: MicrosoftYaHei
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
.box.box-white .box-border{
|
|||
|
|
padding:0 10px;
|
|||
|
|
}
|
|||
|
|
.box.box-white .box-border >.box-border-left{
|
|||
|
|
width: 50px;
|
|||
|
|
height: 4px;
|
|||
|
|
background: #c4e2e6;
|
|||
|
|
border-radius: 4px;
|
|||
|
|
float:left;
|
|||
|
|
}
|
|||
|
|
.box.box-white .box-border >.box-border-right{
|
|||
|
|
width: calc(100% - 50px);
|
|||
|
|
height: 3px;
|
|||
|
|
border-bottom: 2px solid #f6f7fa;
|
|||
|
|
border-radius: 4px;
|
|||
|
|
float:right;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
.dl-horizontal{
|
|||
|
|
margin-top:10px;
|
|||
|
|
}
|
|||
|
|
.dl-horizontal>dt{
|
|||
|
|
font-weight:initial;
|
|||
|
|
text-align: right;
|
|||
|
|
width: 80px;
|
|||
|
|
height: 20px;
|
|||
|
|
margin-bottom:8px;
|
|||
|
|
}
|
|||
|
|
.dl-horizontal.dl-horizontal-right>dt{
|
|||
|
|
width: 180px;
|
|||
|
|
text-align: right;
|
|||
|
|
margin-bottom:17px;
|
|||
|
|
}
|
|||
|
|
.dl-horizontal.dl-horizontal-right>dd{
|
|||
|
|
margin-left: 180px;
|
|||
|
|
margin-bottom:17px;
|
|||
|
|
}
|
|||
|
|
.dl-horizontal>dd{
|
|||
|
|
margin-left: 80px;
|
|||
|
|
height: 20px;
|
|||
|
|
text-align: left;
|
|||
|
|
margin-bottom:8px;
|
|||
|
|
}
|
|||
|
|
.font-blue{
|
|||
|
|
color: #1890FF;
|
|||
|
|
}
|
|||
|
|
.font-red{
|
|||
|
|
color: #F55945;
|
|||
|
|
}
|
|||
|
|
.font-yellow{
|
|||
|
|
color: #efa103;
|
|||
|
|
}
|
|||
|
|
.lable-right{
|
|||
|
|
font-size: 15px;
|
|||
|
|
font-family: MicrosoftYaHei;
|
|||
|
|
font-weight: 600;
|
|||
|
|
color: #1d1e1f;
|
|||
|
|
line-height: 20px;
|
|||
|
|
letter-spacing: 1px;
|
|||
|
|
}
|
|||
|
|
.lable-left{
|
|||
|
|
font-size: 14px;
|
|||
|
|
font-family: MicrosoftYaHei;
|
|||
|
|
color: #68696b;
|
|||
|
|
line-height: 20px;
|
|||
|
|
letter-spacing: 1px;
|
|||
|
|
}
|
|||
|
|
.lable-black{
|
|||
|
|
font-size: 16px;
|
|||
|
|
font-family: MicrosoftYaHei;
|
|||
|
|
font-weight: 700;
|
|||
|
|
text-align: center;
|
|||
|
|
color: #121212;
|
|||
|
|
line-height: 21px;
|
|||
|
|
letter-spacing: 0px;
|
|||
|
|
}
|
|||
|
|
.lable-green{
|
|||
|
|
font-size: 50px;
|
|||
|
|
font-family: MicrosoftYaHei, MicrosoftYaHei-Bold;
|
|||
|
|
font-weight: 700;
|
|||
|
|
text-align: center;
|
|||
|
|
color: #00cccc;
|
|||
|
|
line-height: 72px;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
.lable-green-small{
|
|||
|
|
font-size: 30px;
|
|||
|
|
font-family: MicrosoftYaHei, MicrosoftYaHei-Bold;
|
|||
|
|
font-weight: 700;
|
|||
|
|
text-align: left;
|
|||
|
|
color: #00cccc;
|
|||
|
|
line-height: 42px;
|
|||
|
|
}
|
|||
|
|
.select-blue{
|
|||
|
|
border: 1px solid #3e99e8;
|
|||
|
|
border-radius: 4px;
|
|||
|
|
color: #3e99e8;
|
|||
|
|
padding:5px 10px;
|
|||
|
|
height:30px;
|
|||
|
|
}
|
|||
|
|
.select-blue{
|
|||
|
|
border: 1px solid #3e99e8;
|
|||
|
|
border-radius: 4px;
|
|||
|
|
color: #3e99e8;
|
|||
|
|
padding:0px 5px;
|
|||
|
|
height:25px;
|
|||
|
|
}
|
|||
|
|
.well-xs{
|
|||
|
|
padding: 5px;
|
|||
|
|
}
|
|||
|
|
.well-xs>label{
|
|||
|
|
margin-bottom: 0px;
|
|||
|
|
}
|
|||
|
|
</style>
|
|||
|
|
<script type="text/javascript">
|
|||
|
|
var addFun = function() {
|
|||
|
|
$.post(ext.contextPath + '/work/mpoint/add.do', {} , function(data) {
|
|||
|
|
$("#subDiv").html(data);
|
|||
|
|
openModal('subModal');
|
|||
|
|
});
|
|||
|
|
};
|
|||
|
|
var editFun = function(id) {
|
|||
|
|
$.post(ext.contextPath + '/work/mpoint/edit.do', {id:id} , function(data) {
|
|||
|
|
$("#subDiv").html(data);
|
|||
|
|
openModal('subModal');
|
|||
|
|
});
|
|||
|
|
};
|
|||
|
|
var deleteFun = function(id) {
|
|||
|
|
swal({
|
|||
|
|
text: "您确定要删除此记录?",
|
|||
|
|
dangerMode: true,
|
|||
|
|
buttons: {
|
|||
|
|
cancel: {
|
|||
|
|
text: "取消",
|
|||
|
|
value: null,
|
|||
|
|
visible: true,
|
|||
|
|
className: "btn btn-default btn-sm",
|
|||
|
|
closeModal: true,
|
|||
|
|
},
|
|||
|
|
confirm: {
|
|||
|
|
text: "确定",
|
|||
|
|
value: true,
|
|||
|
|
visible: true,
|
|||
|
|
className: "btn btn-danger btn-sm",
|
|||
|
|
closeModal: true
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
})
|
|||
|
|
.then(willDelete => {
|
|||
|
|
if (willDelete) {
|
|||
|
|
$.post(ext.contextPath + '/work/group/delete.do', {id : id}, function(data) {
|
|||
|
|
if(data==1){
|
|||
|
|
$("#table").bootstrapTable('refresh');
|
|||
|
|
}else{
|
|||
|
|
showAlert('d','删除失败','mainAlertdiv');
|
|||
|
|
}
|
|||
|
|
});
|
|||
|
|
|
|||
|
|
}
|
|||
|
|
});
|
|||
|
|
};
|
|||
|
|
var deletesFun = function() {
|
|||
|
|
var checkedItems = $("#table").bootstrapTable('getSelections');
|
|||
|
|
var datas="";
|
|||
|
|
$.each(checkedItems, function(index, item){
|
|||
|
|
datas+=item.id+",";
|
|||
|
|
});
|
|||
|
|
if(datas==""){
|
|||
|
|
showAlert('d','请先选择记录','mainAlertdiv');
|
|||
|
|
}else{
|
|||
|
|
swal({
|
|||
|
|
text: "您确定要删除此记录?",
|
|||
|
|
dangerMode: true,
|
|||
|
|
buttons: {
|
|||
|
|
cancel: {
|
|||
|
|
text: "取消",
|
|||
|
|
value: null,
|
|||
|
|
visible: true,
|
|||
|
|
className: "btn btn-default btn-sm",
|
|||
|
|
closeModal: true,
|
|||
|
|
},
|
|||
|
|
confirm: {
|
|||
|
|
text: "确定",
|
|||
|
|
value: true,
|
|||
|
|
visible: true,
|
|||
|
|
className: "btn btn-danger btn-sm",
|
|||
|
|
closeModal: true
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
})
|
|||
|
|
.then(willDelete => {
|
|||
|
|
if (willDelete) {
|
|||
|
|
$.post(ext.contextPath + '/work/group/deletes.do', {ids:datas} , function(data) {
|
|||
|
|
if(data>0){
|
|||
|
|
$("#table").bootstrapTable('refresh');
|
|||
|
|
}else{
|
|||
|
|
showAlert('d','删除失败','mainAlertdiv');
|
|||
|
|
}
|
|||
|
|
});
|
|||
|
|
|
|||
|
|
}
|
|||
|
|
});
|
|||
|
|
}
|
|||
|
|
};
|
|||
|
|
var init = function() {
|
|||
|
|
$.post(ext.contextPath + '/work/group/getListForSelect.do', {} , function(data) {
|
|||
|
|
//console.info(data)
|
|||
|
|
if(data.length>0){
|
|||
|
|
for(var i=0;i<data.length;i++){
|
|||
|
|
$("#search_code").append("<option value='"+data[i].id+"'>"+data[i].text+"</option>");
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
},'json');
|
|||
|
|
|
|||
|
|
};
|
|||
|
|
var dosearch = function() {
|
|||
|
|
$("#table").bootstrapTable('refresh');
|
|||
|
|
};
|
|||
|
|
//巡检情况
|
|||
|
|
function doInspection(id,value,colorNum){
|
|||
|
|
const colorList = ['#EFA103', '#0988FF', '#FE8840', '#FBD444', '#7F6AAD', '#585247'];
|
|||
|
|
var othVal = 100 - value;
|
|||
|
|
var myChart = echarts.init(document.getElementById(id));
|
|||
|
|
var option = {
|
|||
|
|
title: {
|
|||
|
|
text: '已完成',
|
|||
|
|
x: 'center',
|
|||
|
|
y: 'center',
|
|||
|
|
top:'30%',
|
|||
|
|
textStyle: {
|
|||
|
|
fontSize: '12',
|
|||
|
|
fontWeight: 400,
|
|||
|
|
color: '#a3a9af',
|
|||
|
|
},
|
|||
|
|
subtext:value+'%',
|
|||
|
|
subtextStyle: {
|
|||
|
|
fontWeight: 'normal',
|
|||
|
|
color: '#000000',
|
|||
|
|
fontSize: '40'
|
|||
|
|
} ,
|
|||
|
|
},
|
|||
|
|
color: ['#F6F8F9'],
|
|||
|
|
grid: {
|
|||
|
|
top:0,
|
|||
|
|
left:0,
|
|||
|
|
right:0,
|
|||
|
|
bottom:0,
|
|||
|
|
},
|
|||
|
|
series: [{
|
|||
|
|
name: 'Line 1',
|
|||
|
|
type: 'pie',
|
|||
|
|
clockWise: true,
|
|||
|
|
radius: ['80%', '100%'],
|
|||
|
|
itemStyle: {
|
|||
|
|
normal: {
|
|||
|
|
label: {
|
|||
|
|
show: false
|
|||
|
|
},
|
|||
|
|
labelLine: {
|
|||
|
|
show: false
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
},
|
|||
|
|
hoverAnimation: false,
|
|||
|
|
data: [{
|
|||
|
|
value: value,
|
|||
|
|
name: '01',
|
|||
|
|
itemStyle: {
|
|||
|
|
normal: {
|
|||
|
|
color: colorList[colorNum],
|
|||
|
|
label: {
|
|||
|
|
show: false
|
|||
|
|
},
|
|||
|
|
labelLine: {
|
|||
|
|
show: false
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
}, {
|
|||
|
|
name: '02',
|
|||
|
|
value: othVal
|
|||
|
|
}]
|
|||
|
|
}]
|
|||
|
|
}
|
|||
|
|
myChart.clear();
|
|||
|
|
myChart.setOption(option, true);
|
|||
|
|
}
|
|||
|
|
//异常pie
|
|||
|
|
function doerr(id,val){
|
|||
|
|
const colorList = ['#EFA103', '#057DEC', '#FE8840', '#FBD444', '#7F6AAD', '#585247'];
|
|||
|
|
var data = val;
|
|||
|
|
var legendName = new Array;
|
|||
|
|
var sum=0;
|
|||
|
|
data.forEach(function(value,i){
|
|||
|
|
legendName[i] = value.name;
|
|||
|
|
sum += value.value;
|
|||
|
|
});
|
|||
|
|
var myChart = echarts.init(document.getElementById(id));
|
|||
|
|
var option = {
|
|||
|
|
title: {
|
|||
|
|
text: sum,
|
|||
|
|
textStyle: {
|
|||
|
|
fontSize: 28,
|
|||
|
|
color: '#000',
|
|||
|
|
lineHeight: 34
|
|||
|
|
},
|
|||
|
|
x: 'center',
|
|||
|
|
y: 'center'
|
|||
|
|
},
|
|||
|
|
grid: {
|
|||
|
|
top:0,
|
|||
|
|
left:0,
|
|||
|
|
right:0,
|
|||
|
|
bottom:0,
|
|||
|
|
},
|
|||
|
|
tooltip: {
|
|||
|
|
trigger: 'item',
|
|||
|
|
},
|
|||
|
|
color: colorList,
|
|||
|
|
series: [
|
|||
|
|
{
|
|||
|
|
name: '设备',
|
|||
|
|
type: 'pie',
|
|||
|
|
radius: ['55%', '70%'],
|
|||
|
|
center: ['50%', '50%'],
|
|||
|
|
itemStyle: {
|
|||
|
|
borderWidth: 3,
|
|||
|
|
borderColor: '#fff'
|
|||
|
|
},
|
|||
|
|
data: data,
|
|||
|
|
}
|
|||
|
|
]
|
|||
|
|
};
|
|||
|
|
myChart.clear();
|
|||
|
|
myChart.setOption(option, true);
|
|||
|
|
}
|
|||
|
|
//异常上报line
|
|||
|
|
function doline(id,data){
|
|||
|
|
const colorList = ['#EFA103', '#057DEC', '#9E70C7', '#47C1C8', '#F55945', '#A84ECB'];
|
|||
|
|
var series = new Array;
|
|||
|
|
data.forEach(function(val,i){
|
|||
|
|
series[i] = {
|
|||
|
|
name: val.name,
|
|||
|
|
type: 'line',
|
|||
|
|
data: val.value,
|
|||
|
|
showSymbol: false,
|
|||
|
|
lineStyle:{
|
|||
|
|
color:colorList[i],
|
|||
|
|
},
|
|||
|
|
};
|
|||
|
|
});
|
|||
|
|
// 基于准备好的dom,初始化echarts实例
|
|||
|
|
var myChart = echarts.init(document.getElementById(id));
|
|||
|
|
var option = {
|
|||
|
|
color: colorList,
|
|||
|
|
tooltip: {
|
|||
|
|
trigger: 'axis',
|
|||
|
|
},
|
|||
|
|
grid: {
|
|||
|
|
left: '1%',
|
|||
|
|
right: '1%',
|
|||
|
|
top: '10%',
|
|||
|
|
bottom: '5%',
|
|||
|
|
containLabel: true
|
|||
|
|
},
|
|||
|
|
xAxis: {
|
|||
|
|
type : 'category',
|
|||
|
|
axisTick: {
|
|||
|
|
show: false
|
|||
|
|
},
|
|||
|
|
},
|
|||
|
|
yAxis: {
|
|||
|
|
type: 'value',
|
|||
|
|
splitNumber: 3 ,
|
|||
|
|
axisLine: {
|
|||
|
|
show: false
|
|||
|
|
},
|
|||
|
|
axisTick: {
|
|||
|
|
show: false
|
|||
|
|
},
|
|||
|
|
//网格样式
|
|||
|
|
splitLine: {
|
|||
|
|
show: true,
|
|||
|
|
lineStyle:{
|
|||
|
|
color: '#8A88B7',
|
|||
|
|
type: 'dashed'
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
},
|
|||
|
|
series: series
|
|||
|
|
};
|
|||
|
|
myChart.clear();
|
|||
|
|
myChart.setOption(option, true);
|
|||
|
|
}
|
|||
|
|
//任务统计等bar
|
|||
|
|
function doBar(id,data,colorNum){
|
|||
|
|
const colorList = ['#F0B253', '#397EFA', '#6AB8FF', '#47C1C8', '#F55945', '#A84ECB'];
|
|||
|
|
var series = new Array;
|
|||
|
|
data.forEach(function(val,i){
|
|||
|
|
series[i] = {
|
|||
|
|
name: data[i].name,
|
|||
|
|
type: 'bar',
|
|||
|
|
stack: '总量',
|
|||
|
|
barWidth: '20%',
|
|||
|
|
barMinWidth: 20 ,
|
|||
|
|
data: data[i].value,
|
|||
|
|
itemStyle:{
|
|||
|
|
color:colorList[i],
|
|||
|
|
},
|
|||
|
|
};
|
|||
|
|
});
|
|||
|
|
// 基于准备好的dom,初始化echarts实例
|
|||
|
|
var myChart = echarts.init(document.getElementById(id));
|
|||
|
|
var option = {
|
|||
|
|
color: colorList[colorNum],
|
|||
|
|
tooltip: {
|
|||
|
|
trigger: 'axis',
|
|||
|
|
},
|
|||
|
|
grid: {
|
|||
|
|
left: '1%',
|
|||
|
|
right: '10%',
|
|||
|
|
top: '5%',
|
|||
|
|
bottom: '5%',
|
|||
|
|
containLabel: true
|
|||
|
|
},
|
|||
|
|
legend: {
|
|||
|
|
top: 0,
|
|||
|
|
right: 0,
|
|||
|
|
orient: 'vertical' ,
|
|||
|
|
},
|
|||
|
|
xAxis: [
|
|||
|
|
{
|
|||
|
|
type: 'category',
|
|||
|
|
axisTick: {
|
|||
|
|
show: false
|
|||
|
|
},
|
|||
|
|
}
|
|||
|
|
],
|
|||
|
|
yAxis: [
|
|||
|
|
{
|
|||
|
|
type: 'value',
|
|||
|
|
axisTick: {
|
|||
|
|
show: false
|
|||
|
|
},
|
|||
|
|
//网格样式
|
|||
|
|
splitLine: {
|
|||
|
|
show: true,
|
|||
|
|
lineStyle:{
|
|||
|
|
color: '#8A88B7',
|
|||
|
|
type: 'dashed',
|
|||
|
|
opacity:0.3,
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
],
|
|||
|
|
series: series
|
|||
|
|
};
|
|||
|
|
myChart.clear();
|
|||
|
|
myChart.setOption(option, true);
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
//临时任务
|
|||
|
|
function doTable(id){
|
|||
|
|
var height = $("#"+id).parent().height();
|
|||
|
|
$("#"+id).bootstrapTable({
|
|||
|
|
//url:"",
|
|||
|
|
height:height,
|
|||
|
|
striped: false, //是否显示行间隔色
|
|||
|
|
cache: false, //是否使用缓存,默认为true,所以一般情况下需要设置一下这个属性(*)
|
|||
|
|
});
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
$(function() {
|
|||
|
|
var dateType = $('#dateType').val();//查询类型 0:月 1:年
|
|||
|
|
var selectDate = $('#selectDate').val();//查询的日期
|
|||
|
|
var bizid = unitId;
|
|||
|
|
|
|||
|
|
if(dateType == 1){
|
|||
|
|
dateType = 'year';
|
|||
|
|
selectDate = selectDate + '-01-01';
|
|||
|
|
}
|
|||
|
|
if(dateType == 0){
|
|||
|
|
dateType = 'month';
|
|||
|
|
selectDate = selectDate + '-01';
|
|||
|
|
}
|
|||
|
|
//今日巡检情况-运行巡检
|
|||
|
|
$.ajax({
|
|||
|
|
type:'GET',
|
|||
|
|
url:ext.contextPath + '/timeEfficiency/patrolRecord/getPatrolRecordDetailsByDay.do?&&math='+Math.random()+'&unitId='+bizid+'&dateType='+dateType+'&patrolDate='+selectDate+'&type=P',
|
|||
|
|
async: true,
|
|||
|
|
globle:false,
|
|||
|
|
error: function(){
|
|||
|
|
return false;
|
|||
|
|
},
|
|||
|
|
success: function(data){
|
|||
|
|
var data = eval('(' + data + ')');
|
|||
|
|
var allNum = data.result[0].allNum;//总数
|
|||
|
|
var planNum = data.result[0].planNum;//计划
|
|||
|
|
var tempNum = data.result[0].tempNum;//临时
|
|||
|
|
var notStartNum = data.result[0].notStartNum;//未开始
|
|||
|
|
var startNum = data.result[0].startNum;//进行中
|
|||
|
|
var finishNum = data.result[0].finishNum;//进行中
|
|||
|
|
|
|||
|
|
$('#allNum1').html(allNum);
|
|||
|
|
$('#planNum1').html(planNum);
|
|||
|
|
$('#tempNum1').html(tempNum);
|
|||
|
|
$('#notStartNum1').html(notStartNum);
|
|||
|
|
$('#startNum1').html(startNum);
|
|||
|
|
$('#finishNum1').html(finishNum);
|
|||
|
|
|
|||
|
|
var goodrate = 100;//完好率
|
|||
|
|
if(allNum!= null && allNum!= 0 ){
|
|||
|
|
goodrate = (finishNum/allNum)*100;
|
|||
|
|
goodrate = goodrate.toFixed(0);
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
var finishrate = 0;//总的数据 用于环形图
|
|||
|
|
var nofinishrate = 0;//未完成数据 用于环形图
|
|||
|
|
if(allNum!=null && allNum!='0'){
|
|||
|
|
finishrate = finishNum;
|
|||
|
|
nofinishrate = allNum - finishNum;
|
|||
|
|
}
|
|||
|
|
doInspection("run",finishrate,0);
|
|||
|
|
}
|
|||
|
|
});
|
|||
|
|
$.ajax({
|
|||
|
|
type:'GET',
|
|||
|
|
url:ext.contextPath + '/timeEfficiency/patrolRecord/getPatrolRecordDetailsByDay.do?&&math='+Math.random()+'&unitId='+bizid+'&dateType='+dateType+'&patrolDate='+selectDate+'&type=E',
|
|||
|
|
async: true,
|
|||
|
|
globle:false,
|
|||
|
|
error: function(){
|
|||
|
|
return false;
|
|||
|
|
},
|
|||
|
|
success: function(data){
|
|||
|
|
var data = eval('(' + data + ')');
|
|||
|
|
var allNum = data.result[0].allNum;//总数
|
|||
|
|
var planNum = data.result[0].planNum;//计划
|
|||
|
|
var tempNum = data.result[0].tempNum;//临时
|
|||
|
|
var notStartNum = data.result[0].notStartNum;//未开始
|
|||
|
|
var startNum = data.result[0].startNum;//进行中
|
|||
|
|
var finishNum = data.result[0].finishNum;//进行中
|
|||
|
|
|
|||
|
|
$('#allNum2').html(allNum);
|
|||
|
|
$('#planNum2').html(planNum);
|
|||
|
|
$('#tempNum2').html(tempNum);
|
|||
|
|
$('#notStartNum2').html(notStartNum);
|
|||
|
|
$('#startNum2').html(startNum);
|
|||
|
|
$('#finishNum2').html(finishNum);
|
|||
|
|
|
|||
|
|
var goodrate = 100;//完好率
|
|||
|
|
if(allNum!= null && allNum!= 0 ){
|
|||
|
|
goodrate = (finishNum/allNum)*100;
|
|||
|
|
goodrate = goodrate.toFixed(0);
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
var finishrate = 0;//总的数据 用于环形图
|
|||
|
|
var nofinishrate = 0;//未完成数据 用于环形图
|
|||
|
|
if(allNum!=null && allNum!='0'){
|
|||
|
|
finishrate = finishNum;
|
|||
|
|
nofinishrate = allNum - finishNum;
|
|||
|
|
}
|
|||
|
|
//今日巡检情况-设备巡检
|
|||
|
|
doInspection("equ",finishrate,1);
|
|||
|
|
}
|
|||
|
|
});
|
|||
|
|
$.ajax({
|
|||
|
|
type:'GET',
|
|||
|
|
url:ext.contextPath + '/maintenance/abnormity/getAbnormityNum.do?&&math='+Math.random()+'&unitId='+bizid+'&dateType='+dateType+'&reportDate='+selectDate,
|
|||
|
|
async: true,
|
|||
|
|
globle:false,
|
|||
|
|
error: function(){
|
|||
|
|
return false;
|
|||
|
|
},
|
|||
|
|
success: function(data){
|
|||
|
|
var datastr = eval('(' + data + ')');
|
|||
|
|
var data_p = 0;
|
|||
|
|
var data_e = 0;
|
|||
|
|
var data_sum = 0;
|
|||
|
|
var ydata_p = new Array();//Y轴数据 [0,1,2,3,4,5]
|
|||
|
|
var ydata_e = new Array();//Y轴数据 [0,1,2,3,4,5]
|
|||
|
|
|
|||
|
|
var obj_p = datastr.result[0].pdata;
|
|||
|
|
var obj_e = datastr.result[0].edata;
|
|||
|
|
|
|||
|
|
for(var i in obj_p){
|
|||
|
|
var xdata = new Array();//X轴数据 [0,1,2,3,4,5]
|
|||
|
|
xdata.push(i);
|
|||
|
|
xdata.push(parseInt(obj_p[i]));
|
|||
|
|
ydata_p.push(xdata);
|
|||
|
|
data_p += parseInt(obj_p[i]);
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
for(var i in obj_e){
|
|||
|
|
var xdata = new Array();//X轴数据 [0,1,2,3,4,5]
|
|||
|
|
xdata.push(i);
|
|||
|
|
xdata.push(parseInt(obj_e[i]));
|
|||
|
|
ydata_e.push(xdata);
|
|||
|
|
data_e += parseInt(obj_e[i]);
|
|||
|
|
}
|
|||
|
|
//异常上报line
|
|||
|
|
var allLine = [
|
|||
|
|
{name:"运行异常",value:ydata_p},
|
|||
|
|
{name:"设备异常",value:ydata_e}
|
|||
|
|
];
|
|||
|
|
doline("line",allLine);
|
|||
|
|
data_sum=data_p+data_e;
|
|||
|
|
$('#data_sum').html(data_sum);
|
|||
|
|
$('#data_p').html(data_p);
|
|||
|
|
$('#data_e').html(data_e);
|
|||
|
|
//异常上报pie
|
|||
|
|
var data = [
|
|||
|
|
{name: '运行异常', value: data_p},
|
|||
|
|
{name: '设备异常', value: data_e},
|
|||
|
|
];
|
|||
|
|
doerr("pie",data);
|
|||
|
|
}
|
|||
|
|
});
|
|||
|
|
|
|||
|
|
var heightstr = $("#table").parent().height();
|
|||
|
|
$('#table').bootstrapTable('destroy');
|
|||
|
|
$("#table").bootstrapTable({ // 对应table标签的id
|
|||
|
|
url: ext.contextPath + '/timeEfficiency/patrolRecord/getPatrolRecordTempTask_new.do', // 获取表格数据的url
|
|||
|
|
cache: false, // 设置为 false 禁用 AJAX 数据缓存, 默认为true
|
|||
|
|
striped: true, //表格显示条纹,默认为false
|
|||
|
|
pagination: true, // 在表格底部显示分页组件,默认false
|
|||
|
|
pageList: [7], // 设置页面可以显示的数据条数
|
|||
|
|
pageSize: 7, // 页面数据条数
|
|||
|
|
pageNumber: 1, // 首页页码
|
|||
|
|
height: heightstr,
|
|||
|
|
sidePagination: 'server', // 设置为服务器端分页
|
|||
|
|
queryParams: function (params) { // 请求服务器数据时发送的参数,可以在这里添加额外的查询参数,返回false则终止请求
|
|||
|
|
return {
|
|||
|
|
rows: params.limit, // 每页要显示的数据条数
|
|||
|
|
page: params.offset / params.limit + 1, // 每页显示数据的开始页码
|
|||
|
|
sort: params.sort, // 要排序的字段
|
|||
|
|
order: params.order,
|
|||
|
|
unitId: bizid,
|
|||
|
|
dateType: dateType,
|
|||
|
|
patrolDate: selectDate,
|
|||
|
|
type: '${type}'
|
|||
|
|
}
|
|||
|
|
},
|
|||
|
|
sortName: 'id', // 要排序的字段
|
|||
|
|
sortOrder: 'desc', // 排序规则
|
|||
|
|
columns: [
|
|||
|
|
{
|
|||
|
|
field: 'name', // 返回json数据中的name
|
|||
|
|
title: '巡检名称', // 表格表头显示文字
|
|||
|
|
align: 'center', // 左右居中
|
|||
|
|
valign: 'middle', // 上下居中
|
|||
|
|
width: '20%',
|
|||
|
|
formatter: function (value, row, index) {
|
|||
|
|
return "<span style='display: block;overflow: hidden;text-overflow: ellipsis;white-space: nowrap;' title='" + row.name + "'>" + row.name + "</span>";
|
|||
|
|
}
|
|||
|
|
}, {
|
|||
|
|
field: 'content', // 返回json数据中的name
|
|||
|
|
title: '巡检内容', // 表格表头显示文字
|
|||
|
|
align: 'center', // 左右居中
|
|||
|
|
valign: 'middle', // 上下居中
|
|||
|
|
width: '20%',
|
|||
|
|
formatter: function (value, row, index) {
|
|||
|
|
return "<span style='display: block;overflow: hidden;text-overflow: ellipsis;white-space: nowrap;' title='" + row.content + "'>" + row.content + "</span>";
|
|||
|
|
}
|
|||
|
|
}, {
|
|||
|
|
field: 'startTime', // 返回json数据中的name
|
|||
|
|
title: '巡检时间', // 表格表头显示文字
|
|||
|
|
align: 'center', // 左右居中
|
|||
|
|
valign: 'middle', // 上下居中
|
|||
|
|
width: '20%',
|
|||
|
|
formatter: function (value, row, index) {
|
|||
|
|
return "<span style='display: block;overflow: hidden;text-overflow: ellipsis;white-space: nowrap;' title='" + row.startTime + "'>" + row.startTime.substring(0,19) + "</span>";
|
|||
|
|
}
|
|||
|
|
}, {
|
|||
|
|
field: 'worker', // 返回json数据中的name
|
|||
|
|
title: '巡检人', // 表格表头显示文字
|
|||
|
|
align: 'center', // 左右居中
|
|||
|
|
valign: 'middle',
|
|||
|
|
width: '15%',
|
|||
|
|
formatter: function (value, row, index) {
|
|||
|
|
if(row.worker!=null && row.worker!=''){
|
|||
|
|
return row.worker.caption;
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
}, {
|
|||
|
|
field: 'patrolModel', // 返回json数据中的name
|
|||
|
|
title: '巡检模式', // 表格表头显示文字
|
|||
|
|
align: 'center', // 左右居中
|
|||
|
|
valign: 'middle',
|
|||
|
|
width: '15%',
|
|||
|
|
formatter: function (value, row, index) {
|
|||
|
|
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
],
|
|||
|
|
onLoadSuccess: function () { //加载成功时执行
|
|||
|
|
adjustBootstrapTableView("table");
|
|||
|
|
},
|
|||
|
|
onLoadError: function () { //加载失败时执行
|
|||
|
|
console.info("加载数据失败");
|
|||
|
|
}
|
|||
|
|
});
|
|||
|
|
//任务统计bar
|
|||
|
|
var allBar = [
|
|||
|
|
{name:"运行巡检",value:[['1月', 20], ['2月', 10], ['3月', 70], ['4月', 30], ['5月', 50], ['6月', 40]]},
|
|||
|
|
{name:"设备巡检",value:[['1月', 10], ['2月', 20], ['3月', 60], ['4月', 40], ['5月', 20], ['6月', 60]]},
|
|||
|
|
{name:"集控巡检",value:[['1月', 30], ['2月', 50], ['3月', 10], ['4月', 50], ['5月', 40], ['6月', 60]]},
|
|||
|
|
];
|
|||
|
|
doBar("bar",allBar);
|
|||
|
|
});
|
|||
|
|
</script>
|
|||
|
|
|
|||
|
|
</head>
|
|||
|
|
<body onload="initMenu()" class="hold-transition ${cu.themeclass} sidebar-mini">
|
|||
|
|
<input type="hidden" name="dateType" id="dateType" value="0">
|
|||
|
|
<input type="hidden" name="selectDate" id="selectDate" value="${datestr}">
|
|||
|
|
<div class="wrapper">
|
|||
|
|
<!-- 引用top -->
|
|||
|
|
<%--<jsp:include page="/jsp/top.jsp"></jsp:include>--%>
|
|||
|
|
<!-- 菜单栏 -->
|
|||
|
|
<%--<jsp:include page="/jsp/left.jsp"></jsp:include>--%>
|
|||
|
|
<div class="content-wrapper">
|
|||
|
|
<!-- Content Header (Page header) -->
|
|||
|
|
<section class="content-header">
|
|||
|
|
<h1 id ="head_title"></h1>
|
|||
|
|
<ol class="breadcrumb">
|
|||
|
|
<li><a id ='head_firstlevel' href="#"><i class="fa fa-refresh"></i> </a></li>
|
|||
|
|
</ol>
|
|||
|
|
</section>
|
|||
|
|
<!-- Main content -->
|
|||
|
|
<section class="content container-fluid">
|
|||
|
|
<div id="mainAlertdiv"></div>
|
|||
|
|
<div id="subDiv"></div>
|
|||
|
|
<div id="menu4SelectDiv"></div>
|
|||
|
|
<div calss="row">
|
|||
|
|
<div class="col-md-5 cont-left">
|
|||
|
|
<div class="box box-white box-left">
|
|||
|
|
<div class="box-header">
|
|||
|
|
<h4 class="box-title">本月巡检情况 <small id="nowdt" class="nowdt">${datestr}</small> </h4>
|
|||
|
|
<div class="box-tools pull-right">
|
|||
|
|
|
|||
|
|
</div>
|
|||
|
|
<!-- /.box-tools -->
|
|||
|
|
</div>
|
|||
|
|
<div class="box-border">
|
|||
|
|
<div class="box-border-left"></div>
|
|||
|
|
<div class="box-border-right"></div>
|
|||
|
|
</div>
|
|||
|
|
<!-- /.box-header -->
|
|||
|
|
<div class="box-body" style="height:90%;">
|
|||
|
|
<div class="inspection-box-title font-yellow" style="">运行巡检</div>
|
|||
|
|
<div class="row">
|
|||
|
|
<div class="col-md-3" id="run"></div>
|
|||
|
|
<div class="col-md-2">
|
|||
|
|
<span class="col-md-12 lable-black" style="padding:0;margin-top: 70%;margin-bottom: 8px;">总数</span>
|
|||
|
|
<span class="col-md-12 lable-black" style="padding:0;" id = "allNum1">0</span>
|
|||
|
|
</div>
|
|||
|
|
<div class="col-md-3" style="height:95px;margin-top: 7%;border-left:1px solid #e5e5e5;border-right:1px solid #e5e5e5;">
|
|||
|
|
<dl class="dl-horizontal">
|
|||
|
|
<dt class="lable-left"><i class="fa fa-check-square font-blue"></i> 计划:</dt>
|
|||
|
|
<dd class="lable-right" id = "planNum1">210</dd>
|
|||
|
|
<dt class="lable-left"><i class="fa fa-check-square font-yellow"></i> 临时:</dt>
|
|||
|
|
<dd class="lable-right" id = "tempNum1">10</dd>
|
|||
|
|
</dl>
|
|||
|
|
</div>
|
|||
|
|
<div class="col-md-3">
|
|||
|
|
<dl class="dl-horizontal" style="margin-top: 45%;">
|
|||
|
|
<dt class="lable-left">正在进行:</dt>
|
|||
|
|
<dd class="lable-right" id = "startNum1">10</dd>
|
|||
|
|
<dt class="lable-left">未完成:</dt>
|
|||
|
|
<dd class="lable-right" id = "notStartNum1">20</dd>
|
|||
|
|
<dt class="lable-left">完成:</dt>
|
|||
|
|
<dd class="lable-right" id = "finishNum1">200</dd>
|
|||
|
|
</dl>
|
|||
|
|
</div>
|
|||
|
|
</div>
|
|||
|
|
<div class="borderLine"></div>
|
|||
|
|
<div class="inspection-box-title font-blue" style="">设备巡检</div>
|
|||
|
|
<div class="row">
|
|||
|
|
<div class="col-md-3" id="equ"></div>
|
|||
|
|
<div class="col-md-2">
|
|||
|
|
<span class="col-md-12 lable-black" style="padding:0;margin-top: 70%;margin-bottom: 8px;">总数</span>
|
|||
|
|
<span class="col-md-12 lable-black" style="padding:0;" id = "allNum2">18</span>
|
|||
|
|
</div>
|
|||
|
|
<div class="col-md-3" style="height:95px;margin-top: 7%;border-left:1px solid #e5e5e5;border-right:1px solid #e5e5e5;">
|
|||
|
|
<dl class="dl-horizontal">
|
|||
|
|
<dt class="lable-left"><i class="fa fa-check-square font-blue"></i> 计划:</dt>
|
|||
|
|
<dd class="lable-right" id = "planNum2">18</dd>
|
|||
|
|
<dt class="lable-left"><i class="fa fa-check-square font-yellow"></i> 临时:</dt>
|
|||
|
|
<dd class="lable-right" id = "tempNum2">0</dd>
|
|||
|
|
</dl>
|
|||
|
|
</div>
|
|||
|
|
<div class="col-md-3">
|
|||
|
|
<dl class="dl-horizontal" style="margin-top: 45%;">
|
|||
|
|
<dt class="lable-left">正在进行:</dt>
|
|||
|
|
<dd class="lable-right" id = "startNum2">10</dd>
|
|||
|
|
<dt class="lable-left">未完成:</dt>
|
|||
|
|
<dd class="lable-right" id = "notStartNum2">2</dd>
|
|||
|
|
<dt class="lable-left">完成:</dt>
|
|||
|
|
<dd class="lable-right" id = "finishNum2">6</dd>
|
|||
|
|
</dl>
|
|||
|
|
</div>
|
|||
|
|
</div>
|
|||
|
|
</div>
|
|||
|
|
<!-- /.box-body -->
|
|||
|
|
</div>
|
|||
|
|
<div class="box box-white box-left">
|
|||
|
|
|
|||
|
|
<div class="box-left-footer"></div>
|
|||
|
|
<div class="box-header">
|
|||
|
|
<h4 class="box-title">临时任务</h4>
|
|||
|
|
<div class="box-tools pull-right">
|
|||
|
|
|
|||
|
|
</div>
|
|||
|
|
<!-- /.box-tools -->
|
|||
|
|
</div>
|
|||
|
|
<div class="box-border">
|
|||
|
|
<div class="box-border-left"></div>
|
|||
|
|
<div class="box-border-right"></div>
|
|||
|
|
</div>
|
|||
|
|
<!-- /.box-header -->
|
|||
|
|
<div class="box-body" style="height:90%;">
|
|||
|
|
<table class="table table-striped table-condensed" id="table">
|
|||
|
|
<!-- <thead>
|
|||
|
|
<tr>
|
|||
|
|
<th data-width="30%">内容</th>
|
|||
|
|
<th data-width="40%">时间</th>
|
|||
|
|
<th data-width="15%">巡检人</th>
|
|||
|
|
<th data-width="15%">完成情况</th>
|
|||
|
|
</tr>
|
|||
|
|
</thead> -->
|
|||
|
|
</table>
|
|||
|
|
</div>
|
|||
|
|
<!-- /.box-body -->
|
|||
|
|
</div>
|
|||
|
|
</div>
|
|||
|
|
<div class="col-md-7">
|
|||
|
|
<div class="box box-white box-right-top">
|
|||
|
|
<div class="box-header">
|
|||
|
|
<h4 class="box-title">异常上报</h4>
|
|||
|
|
<div class="box-tools-left ">
|
|||
|
|
<select class="form-control select-blue">
|
|||
|
|
<option>${datestr}</option>
|
|||
|
|
</select>
|
|||
|
|
</div>
|
|||
|
|
<!-- /.box-tools -->
|
|||
|
|
</div>
|
|||
|
|
<div class="box-border">
|
|||
|
|
<div class="box-border-left"></div>
|
|||
|
|
<div class="box-border-right"></div>
|
|||
|
|
</div>
|
|||
|
|
<!-- /.box-header -->
|
|||
|
|
<div class="box-body" style="height:90%;">
|
|||
|
|
<div class="row">
|
|||
|
|
<div class="col-md-12" id="line"></div>
|
|||
|
|
</div>
|
|||
|
|
<div class="row">
|
|||
|
|
<div class="col-md-6" id="pie"></div>
|
|||
|
|
<div class="col-md-5" style="padding-top: 5%;">
|
|||
|
|
<div class="well well-xs" style="overflow: auto;">
|
|||
|
|
<label class="pull-left">异常总数量</label>
|
|||
|
|
<label class="pull-right" id="data_sum">1230</label>
|
|||
|
|
</div>
|
|||
|
|
<div class="well well-xs" style="overflow: auto;">
|
|||
|
|
<label class="pull-left">运行异常数量</label>
|
|||
|
|
<label class="pull-right" id="data_p">600</label>
|
|||
|
|
</div>
|
|||
|
|
<div class="well well-xs" style="overflow: auto;">
|
|||
|
|
<label class="pull-left">设备异常数量</label>
|
|||
|
|
<label class="pull-right" id="data_e">630</label>
|
|||
|
|
</div>
|
|||
|
|
</div>
|
|||
|
|
</div>
|
|||
|
|
</div>
|
|||
|
|
<!-- /.box-body -->
|
|||
|
|
</div>
|
|||
|
|
<div class="box box-white box-right-bottom">
|
|||
|
|
<div class="box-header">
|
|||
|
|
<h4 class="box-title">任务统计</h4>
|
|||
|
|
<div class="box-tools-left ">
|
|||
|
|
<select class="form-control select-blue">
|
|||
|
|
<option>${datestr}</option>
|
|||
|
|
</select>
|
|||
|
|
</div>
|
|||
|
|
<!-- /.box-tools -->
|
|||
|
|
</div>
|
|||
|
|
<div class="box-border">
|
|||
|
|
<div class="box-border-left"></div>
|
|||
|
|
<div class="box-border-right"></div>
|
|||
|
|
</div>
|
|||
|
|
<!-- /.box-header -->
|
|||
|
|
<div class="box-body" style="height:90%;" id="bar">
|
|||
|
|
</div>
|
|||
|
|
<!-- /.box-body -->
|
|||
|
|
</div>
|
|||
|
|
</div>
|
|||
|
|
</div>
|
|||
|
|
</section>
|
|||
|
|
<!-- /.content -->
|
|||
|
|
</div>
|
|||
|
|
<%--<jsp:include page="/jsp/bottom.jsp"></jsp:include>--%>
|
|||
|
|
<%--<jsp:include page="/jsp/side.jsp"></jsp:include>--%>
|
|||
|
|
</div>
|
|||
|
|
</body>
|
|||
|
|
</html>
|