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> |