Files
SIPAIIS_WMS_JSSW/WebRoot/JS/smart/smart.js
2026-01-16 14:13:44 +08:00

1409 lines
66 KiB
JavaScript
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

var fontcolor_grey = '#aeaeae';
var fontcolor_black = '#0d2336';
var color_blue = '#36FFF9';
var color_blue_other = '#1D4F6D';
var img_name = '';
var titleColor = '#ffffff';
var heightV =1;
var widthV =1;
var height = 1080;
var width = 1920;
var bizid = "";
var jsp_id = "";
var color = ['#ffff13','#31ff7d','#ff2ee3','#2e97ff','#ffb536','#58C6FF','#07FF72'];
var selected_DailyWaterSupply = true;
var selected_RawWaterQuality = true;
var selected_EffluentQuality_beijiang = true;
var selected_EffluentQuality_xijiang = true;
var selectedAll = [];
var left_top_height = 0;
var left_middle_height = 0;
var left_bottom_height = 0;
var center_top_height = 0;
var center_middle_height = 0;
var center_bottom_height = 0;
var right_top_height = 0;
var right_middle_height = 0;
var right_bottom_height = 0;
function changeDataType(){
var dataType = $("#dataType").val();
if(dataType==1){
$("#unit").show();
$("#configureDetail").show();
$("#proDatavisualFrame").hide();
}else{
if(dataType==2){
$("#configureDetail").show();
}else{
$("#configureDetail").hide();
}
$("#proDatavisualFrame").show();
$("#unit").hide();
}
}
function showDatavisualFrame4Select(hiddenId,textId,id){
$.post(ext.contextPath + '/process/dataVisualFrame/showMenu4Select.do', {
formId: "subForm",
hiddenId: hiddenId,
textId: textId,
ownId: id,
menuType: 'proVisual'
}, function (data) {
$("#menu4SelectDiv").html(data);
openModal("menu4SelectModal")
});
}
function showSmartCompany4Select(){
$.post(ext.contextPath + '/smart/showCompany4Select.do', {
formId: "subForm",
hiddenId: "companyid",
textId: "companyname",
}, function (data) {
$("#menu4SelectDiv").html(data);
openModal("company4SelectModal")
});
}
function dosaveElement(){
var icon_width = 36;
var icon_height = 49;
var elementLeft = $("#elementLeft").val();
var elementTop = $("#elementTop").val();
if(dataType==1){
icon_width = 36;
icon_height = 49;
}else{
icon_width = 18;
icon_height = 42;
}
$("#subForm #elementLeft").val(elementLeft-icon_width/2);
$("#subForm #elementTop").val(elementTop-icon_height);
$("#subForm").bootstrapValidator({
live: 'disabled',//验证时机enabled是内容有变化就验证默认disabled和submitted是提交再验证
fields: {
name: {
validators: {
notEmpty: {
message: '名称不能为空'
}
}
},
}
});
$("#subForm").bootstrapValidator('validate');//提交验证
if ($("#subForm").data('bootstrapValidator').isValid()) {//获取验证结果,如果成功,执行下面代码
$.post(ext.contextPath + "/jspConfigure/save.do", $("#subForm").serialize(), function(result) {
if (result == 1) {
getImgData();
}else{
alert('保存失败');
}
},'json');
}
}
function doupdateElement() {
$("#subForm").bootstrapValidator('validate');//提交验证
if ($("#subForm").data('bootstrapValidator').isValid()) {//获取验证结果,如果成功,执行下面代码
$.post(ext.contextPath + "/jspConfigure/update.do", $("#subForm").serialize(), function(data) {
if (data == 1){
getImgData();
}else if(data == 0){
alert('保存失败');
}else{
alert(data);
}
},'json');
}
}
function dodelElement() {
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(function(willDelete) {
if (willDelete) {
$.post(ext.contextPath + '/jspConfigure/delete.do', $("#subForm").serialize(), function(data) {
if(data>0){
getImgData();
}else{
alert('删除失败');
}
},'json');
}
});
}
function doConfigureDetail(id) {
$.post(ext.contextPath + '/jspConfigure/jspConfigureDetail.do', {configureId: id,}, function (data) {
$("#menu4SelectDiv").html(data);
openModal("jspConfigureDetailModal")
});
}
function getImgData(){
$('.center-middle').empty();
$.post(ext.contextPath + '/jspConfigure/getSmartImgData.do', {bizid:bizid,jsp_id:jsp_id} , function(data) {
var arr = JSON.parse(data);
console.log(arr);
var elements = "";
if(arr.rows!=null && arr.rows!=undefined && arr.rows!=''){
for(var i=0;i<arr.rows.length;i++){
var element= arr.rows[i];
var icon_width = 36;
var icon_height = 49;
if(element.dataType==1){
src = ext.contextPath+"/IMG/smart/map_waterworks.png";
icon_width = 36;
icon_height = 49;
}else{
src = ext.contextPath+"/IMG/smart/map_pump_station.png";
icon_width = 18;
icon_height = 42;
}
var heightAlone = 0;
var widthAlone = 0;
if(element.windowsHeight != null && element.windowsHeight != undefined && element.windowsHeight != ''){
heightAlone = height/element.windowsHeight;
}else{
heightAlone = heightV;
}
if(element.windowsWidth != null && element.windowsWidth != undefined && element.windowsWidth != ''){
widthAlone = width/element.windowsWidth;
}else{
widthAlone = widthV;
}
var proDatavisualFrameName= "";
if(element.dataVisualFrame!=null){
proDatavisualFrameName=element.dataVisualFrame.name;
}
var companyname= "";
if(element.unit!=null){
companyname=element.unit.sname;
}
var selectUnitName= "";
if(element.unit!=null){
selectUnitName=element.unit.sname;
}
var left = 0;
if(element.dataType==1){
left = element.name.length/2*3;
}else{
left = element.name.length/2*8;
}
elements = '<span class="edit-element-name" style="left: '+(element.elementLeft*widthAlone-left)+'px;top: '+(element.elementTop*heightAlone-20)+'px;">'
+element.name+'</span>';
elements += '<div id="'+element.id+'" '+
' class="edit-element" title="'+element.name+'" data-id="'+element.id+'" data-name="'+element.name+'" '+
' data-elementLeft="'+element.elementLeft+'" data-elementTop="'+element.elementTop+'" data-proDatavisualFrameId="'+element.proDatavisualFrameId+'" '+
' data-proDatavisualFrameName="'+proDatavisualFrameName+'" data-dataType="'+element.dataType+'" '+
' data-companyid="'+element.companyid+'" data-companyname="'+companyname+'" '+
' data-selectUnitId="'+element.selectUnitId+'" data-selectUnitName="'+selectUnitName+'" '+
' style=" left: '+(element.elementLeft*widthAlone)+'px;top: '+(element.elementTop*heightAlone)+'px;">'+
' <img src= "'+src+'" style="width: '+icon_width+'px;height: '+icon_height+'px;" draggable="false"/>'+
' </div>';
var detailList = element.detailList;
if(detailList!=null && detailList.length>0){
var detailListStr =
'<div class="map-content map-content-'+element.id+'" style="left: '+(element.elementLeft*widthAlone-left-70)+'px;top: '+(element.elementTop*heightAlone+icon_height)+'px;">';
for(var d=0;d<detailList.length;d++){
var value = 0;
if(detailList[d].value!=null && detailList[d].value!=undefined && detailList[d].value!=''){
value =detailList[d].value;
}else{
if(detailList[d].mPoint!=null && detailList[d].mPoint!=undefined && detailList[d].mPoint!=''){
value =detailList[d].mPoint.parmvalue;
}
}
detailListStr+=
'<div class="col-xs-5">'+detailList[d].dataName+'</div>'+
'<div class="col-xs-4 font-color-blue">'+value+'</div>'+
'<div class="col-xs-3">'+detailList[d].unit+'</div>';
}
detailListStr+='</div>';
elements += detailListStr;
if($.inArray(element.id,map_content)==-1){
map_content.push(element.id);
}
}
$('.center-middle').append(elements);
var fun = "drag"; // 函数的名称
try {
if($.isFunction(eval(fun))){
drag(element.id);
}
} catch(e) {
console.log('drag函数不存在!');
}
}
}
//结束定时器
clearInterval(interval);
/*启动定时*/
doIntervalShowAndHide();
$(".edit-element").hover(function() {
noMouse = false;
//结束定时器
clearInterval(interval);
//隐藏所有
doHiddenAll();
//显示当前
doShow($(this).attr('id'));
}, function() {
//隐藏所有
doHiddenAll();
noMouse = true;
/*启动定时*/
doIntervalShowAndHide();
});
});
}
var map_content = [];
var noMouse = true;
var interval;
var j = 0;
/*定时-10s*/
function doIntervalShowAndHide(){
/*初始显示第一个*/
doShow(map_content[j]);
interval = setInterval(function(){
//判断鼠标状态
if(noMouse){
doHidden(map_content[j]);
j++;
if(j==(map_content.length)){
j=0;
}
doShow(map_content[j]);
}
},10000);
}
/*执行显示*/
function doShow(code){
$(".map-content-"+code).show();
}
/*执行隐藏*/
function doHidden(code){
$(".map-content-"+code).hide();
}
/*隐藏全部*/
function doHiddenAll(){
$(".map-content").hide();
}
function addAndRemove4Class(one,two){
$('.'+one).addClass(two);
$('.'+one).removeClass(one);
}
function getData(bizid){
var jsp_id = $('#jsp_id').val();
var time_input = $('#time_input').val();
$.post(ext.contextPath + '/smart/getSmartCompanyData.do', {bizid:bizid,time:time_input,jsp_id:jsp_id} , function(data) {
var arr= JSON.parse(data);
console.log(arr);
var left_top_line_legenddata=[];
var left_top_line_seriesdata=[];
var left_middle_line_legenddata=[];
var left_middle_line_seriesdata=[];
var left_bottom_bar_legenddata=[];
var left_bottom_bar_seriesdata=[];
var left_bottom_line_1_legenddata=[];
var left_bottom_line_1_seriesdata=[];
var left_bottom_line_2_legenddata=[];
var left_bottom_line_2_seriesdata=[];
var bar_max =0;
var bar_min =0;
var bar_totle =0;
var center_bottom_line_legenddata=[];
var center_bottom_line_seriesdata=[];
var patrol =0;
var maintenance =0;
var right_bottom_bar_legenddata=[];
var right_bottom_bar_seriesdata=[];
var water_supply_title = "";
var rawWaterQuality_title = "";
var effluentQuality_title = "";
if(arr.rows!=null && arr.rows!=undefined && arr.rows!=''){
for(var i=0;i<arr.rows.length;i++){
var value =0;
var numtail=0;
var dataMax=0;
var rate = 1;
var nowdate = getNowTime();
if(arr.rows[i].visualCacheConfig!=null
&& arr.rows[i].visualCacheConfig!=undefined
&& arr.rows[i].visualCacheConfig!=''){
var visualCacheConfig = arr.rows[i].visualCacheConfig;
if(visualCacheConfig.numtail!=null && visualCacheConfig.numtail!=undefined && visualCacheConfig.numtail!=''){
numtail = visualCacheConfig.numtail;
}
}
if(arr.rows[i].visualCacheData!=null
&& arr.rows[i].visualCacheData!=undefined
&& arr.rows[i].visualCacheData!=''){
var visualCacheData = arr.rows[i].visualCacheData;
if(visualCacheData.inivalue!=null && visualCacheData.inivalue!=undefined && visualCacheData.inivalue!=''){
value = visualCacheData.inivalue;
}else{
if(visualCacheData.value!=null && visualCacheData.value!=undefined && visualCacheData.value!=''){
value = visualCacheData.value;
}else{
if(arr.rows[i].mPoint!=null && arr.rows[i].mPoint!=undefined && arr.rows[i].mPoint!=''){
var mPoint = arr.rows[i].mPoint;
if(mPoint.parmvalue!=null && mPoint.parmvalue!=undefined && mPoint.parmvalue!=''){
value = mPoint.parmvalue;
}
if(mPoint.alarmmax!=null && mPoint.alarmmax!=undefined && mPoint.alarmmax!=''){
dataMax = mPoint.alarmmax;
}
if(mPoint.numtail!=null && mPoint.numtail!=undefined && mPoint.numtail!=''){
numtail = mPoint.numtail;
}
if(mPoint.measuredt!=null && mPoint.measuredt!=undefined && mPoint.measuredt!=''){
nowdate = mPoint.measuredt;
}
}
}
}
if(visualCacheData.numtail!=null && visualCacheData.numtail!=undefined && visualCacheData.numtail!=''){
numtail = visualCacheData.numtail;
}
if(visualCacheData.insdt!=null && visualCacheData.insdt!=undefined && visualCacheData.insdt!=''){
nowdate = visualCacheData.insdt;
}
if(visualCacheData.rate!=null && visualCacheData.rate!=undefined && visualCacheData.rate!=''){
rate = visualCacheData.rate;
}
}else{
var mPoint = arr.rows[i].mPoint;
if(mPoint!=null && mPoint!=undefined && mPoint!=''){
if(mPoint.parmvalue!=null && mPoint.parmvalue!=undefined && mPoint.parmvalue!=''){
value = mPoint.parmvalue;
}
if(mPoint.alarmmax!=null && mPoint.alarmmax!=undefined && mPoint.alarmmax!=''){
dataMax = mPoint.alarmmax;
}
if(mPoint.numtail!=null && mPoint.numtail!=undefined && mPoint.numtail!=''){
numtail = mPoint.numtail;
}
if(mPoint.measuredt!=null && mPoint.measuredt!=undefined && mPoint.measuredt!=''){
nowdate = mPoint.measuredt;
}
}
}
value = parseFloat(value)*rate;
value = value.toFixed(numtail);
if($("."+arr.rows[i].elementCode).length > 0){
$("."+arr.rows[i].elementCode).html(toThousands(value));
}
if($("."+arr.rows[i].elementCode).parent().find('.nowdate').length > 0){
$("."+arr.rows[i].elementCode).parent().find('.nowdate').html(nowdate.substring(11,16));
}
//原水浊度\原水PH\原水溶解氧
if(arr.rows[i].elementCode=='raw_water_turbidity'
|| arr.rows[i].elementCode=='raw_water_ph'
|| arr.rows[i].elementCode=='raw_water_dissolved_oxygen'){
if(arr.rows[i].visualCacheData.mpcode!=null){
rawWaterQuality_title += arr.rows[i].visualCacheData.mpcode+",";
}
left_middle_line_legenddata.push(arr.rows[i].name);
if(!selectedAll.some(item=>item.name===arr.rows[i].name)){
var legenddata = {
name : arr.rows[i].name,
flag : selected_RawWaterQuality
};
selectedAll.push(legenddata);
selected_RawWaterQuality = false;
}
var dataseries =[];
if(arr.rows[i].mPointHistory!=null
&& arr.rows[i].mPointHistory!=undefined
&& arr.rows[i].mPointHistory!=''){
var mPointHistory = arr.rows[i].mPointHistory;
for(var m=0;m<mPointHistory.length;m++){
var dataserie =[];
if(mPointHistory[m].parmvalue!=null
&& mPointHistory[m].parmvalue!=undefined
&& mPointHistory[m].parmvalue!=''){
dataserie.push(mPointHistory[m].measuredt);
if(mPointHistory[m].parmvalue!=null){
dataserie.push(mPointHistory[m].parmvalue.toFixed(numtail));
}
dataseries.push(dataserie);
}
}
}else{
if(arr.rows[i].visualCacheDataList!=null
&& arr.rows[i].visualCacheDataList!=undefined
&& arr.rows[i].visualCacheDataList!=''){
var visualCacheDataList = arr.rows[i].visualCacheDataList;
for(var m=0;m<visualCacheDataList.length;m++){
var dataserie =[];
if(visualCacheDataList[m].value!=null
&& visualCacheDataList[m].value!=undefined
&& visualCacheDataList[m].value!=''){
dataserie.push(visualCacheDataList[m].insdt);
if(visualCacheDataList[m].value!=null){
dataserie.push(visualCacheDataList[m].value.toFixed(numtail));
}
dataseries.push(dataserie);
}
}
}
}
left_middle_line_seriesdata.push({
name: arr.rows[i].name,
type: 'line',
smooth: true,
symbol: 'none',
data: dataseries
});
}
if(arr.rows[i].elementCode=='effluent_turbidity' ){
if($(".yesterday_water_supply").length > 0){
var yes_value = 0;
if(arr.rows[i].mPointHistory!=null
&& arr.rows[i].mPointHistory!=undefined
&& arr.rows[i].mPointHistory!=''){
var mPointHistory = arr.rows[i].mPointHistory;
if(mPointHistory.length>2){
yes_value = mPointHistory[mPointHistory.length-2].parmvalue.toFixed(numtail);
}else{
if(mPointHistory.length>1){
yes_value = mPointHistory[mPointHistory.length-1].parmvalue.toFixed(numtail);
}else{
yes_value = mPointHistory[0].parmvalue.toFixed(numtail);
}
}
}else{
if(arr.rows[i].visualCacheDataList!=null
&& arr.rows[i].visualCacheDataList!=undefined
&& arr.rows[i].visualCacheDataList!=''){
var visualCacheDataList = arr.rows[i].visualCacheDataList;
if(visualCacheDataList.length>2){
yes_value = visualCacheDataList[visualCacheDataList.length-2].value.toFixed(numtail);
}else{
if(visualCacheDataList.length>1){
yes_value = visualCacheDataList[visualCacheDataList.length-1].value.toFixed(numtail);
}else{
yes_value = visualCacheDataList[0].value.toFixed(numtail);
}
}
}
}
$(".yesterday_water_supply").html(toThousands(yes_value));
}
}
//巡检完成率
if(arr.rows[i].elementCode=='patrol_inspection_completion_rate'){
patrol=value;
}
//维修完成率
if(arr.rows[i].elementCode=='maintenance_completion_rate'){
maintenance=value;
}
//机械设备日维修次\电气设备日维修次数\自动化设备日维修次数\水质设备日维修次数
if(arr.rows[i].elementCode=='mechanics_equipment_repair_day'
|| arr.rows[i].elementCode=='electrical_equipment_repair_day'
|| arr.rows[i].elementCode=='automation_equipment_repair_day'
|| arr.rows[i].elementCode=='water_equipment_repair_day' ){
right_bottom_bar_legenddata.push(arr.rows[i].name);
var dataseries =[];
if(arr.rows[i].mPointHistory!=null
&& arr.rows[i].mPointHistory!=undefined
&& arr.rows[i].mPointHistory!=''){
var mPointHistory = arr.rows[i].mPointHistory;
for(var m=0;m<mPointHistory.length;m++){
var dataserie =[];
dataserie.push(mPointHistory[m].measuredt.substr(0,7));
if(mPointHistory[m].parmvalue!=null){
dataserie.push(mPointHistory[m].parmvalue.toFixed(numtail));
}
dataseries.push(dataserie);
}
}else{
if(arr.rows[i].visualCacheDataList!=null
&& arr.rows[i].visualCacheDataList!=undefined
&& arr.rows[i].visualCacheDataList!=''){
var visualCacheDataList = arr.rows[i].visualCacheDataList;
for(var m=0;m<visualCacheDataList.length;m++){
var dataserie =[];
dataserie.push(visualCacheDataList[m].insdt.substr(0,7));
if(visualCacheDataList[m].value!=null){
dataserie.push(visualCacheDataList[m].value.toFixed(numtail));
}
dataseries.push(dataserie);
}
}
}
right_bottom_bar_seriesdata.push({
name: arr.rows[i].name,
type: 'bar',
barMaxWidth: '10%',
stack: '设备',
data: dataseries
});
}
//日供水量
if(arr.rows[i].elementCode=='water_supply' ){
if(arr.rows[i].visualCacheData.mpcode!=null){
water_supply_title += arr.rows[i].visualCacheData.mpcode+",";
}
left_top_line_legenddata.push('总供水量');
if(!selectedAll.some(item=>item.name==='总供水量')){
var legenddata = {
name : '总供水量',
flag : selected_DailyWaterSupply
};
selectedAll.push(legenddata);
selected_DailyWaterSupply = false;
}
if(arr.rows[i].visualCacheData!=null
&& arr.rows[i].visualCacheData!=undefined
&& arr.rows[i].visualCacheData!=''){
var visualCacheData = arr.rows[i].visualCacheData;
if(visualCacheData.mpcode!=null && visualCacheData.mpcode!=''){
water_supply_title += visualCacheData.mpcode+',';
}
}
var dataseries =[];
if(arr.rows[i].mPointHistory!=null
&& arr.rows[i].mPointHistory!=undefined
&& arr.rows[i].mPointHistory!=''){
var mPointHistory = arr.rows[i].mPointHistory;
for(var m=0;m<mPointHistory.length;m++){
var dataserie =[];
dataserie.push(mPointHistory[m].measuredt);
if(mPointHistory[m].parmvalue!=null){
dataserie.push(mPointHistory[m].parmvalue.toFixed(numtail));
}
dataseries.push(dataserie);
}
}else{
if(arr.rows[i].visualCacheDataList!=null
&& arr.rows[i].visualCacheDataList!=undefined
&& arr.rows[i].visualCacheDataList!=''){
var visualCacheDataList = arr.rows[i].visualCacheDataList;
for(var m=0;m<visualCacheDataList.length;m++){
var dataserie =[];
dataserie.push(visualCacheDataList[m].insdt);
if(visualCacheDataList[m].value!=null){
dataserie.push(visualCacheDataList[m].value.toFixed(numtail));
}
dataseries.push(dataserie);
}
}
}
left_top_line_seriesdata.push({
name: '总供水量',
type: 'line',
smooth: true,
symbol: 'none',
areaStyle: {},
/* barMaxWidth: '10%',
itemStyle: {
normal: {
barBorderRadius: 12,
},
}, */
data: dataseries
});
}
//日供水量
if(arr.rows[i].elementCode=='water_supply_beijiang' ){
if(arr.rows[i].visualCacheData.mpcode!=null){
water_supply_title += arr.rows[i].visualCacheData.mpcode+",";
}
left_top_line_legenddata.push('北江厂');
if(!selectedAll.some(item=>item.name==='北江厂')){
var legenddata = {
name : '北江厂',
flag : selected_DailyWaterSupply
};
selectedAll.push(legenddata);
selected_DailyWaterSupply = false;
}
var dataseries =[];
if(arr.rows[i].mPointHistory!=null
&& arr.rows[i].mPointHistory!=undefined
&& arr.rows[i].mPointHistory!=''){
var mPointHistory = arr.rows[i].mPointHistory;
for(var m=0;m<mPointHistory.length;m++){
var dataserie =[];
dataserie.push(mPointHistory[m].measuredt);
if(mPointHistory[m].parmvalue!=null){
dataserie.push(mPointHistory[m].parmvalue.toFixed(numtail));
}
dataseries.push(dataserie);
}
}else{
if(arr.rows[i].visualCacheDataList!=null
&& arr.rows[i].visualCacheDataList!=undefined
&& arr.rows[i].visualCacheDataList!=''){
var visualCacheDataList = arr.rows[i].visualCacheDataList;
for(var m=0;m<visualCacheDataList.length;m++){
var dataserie =[];
dataserie.push(visualCacheDataList[m].insdt);
if(visualCacheDataList[m].value!=null){
dataserie.push(visualCacheDataList[m].value.toFixed(numtail));
}
dataseries.push(dataserie);
}
}
}
left_top_line_seriesdata.push({
name: '北江厂',
type: 'line',
smooth: true,
symbol: 'none',
areaStyle: {},
/* barMaxWidth: '10%',
itemStyle: {
normal: {
barBorderRadius: 12,
},
}, */
data: dataseries
});
}
//日供水量
if(arr.rows[i].elementCode=='water_supply_xijiang' ){
if(arr.rows[i].visualCacheData.mpcode!=null){
water_supply_title += arr.rows[i].visualCacheData.mpcode+",";
}
left_top_line_legenddata.push('西江厂');
if(!selectedAll.some(item=>item.name==='西江厂')){
var legenddata = {
name : '西江厂',
flag : selected_DailyWaterSupply
};
selectedAll.push(legenddata);
selected_DailyWaterSupply = false;
}
var dataseries =[];
if(arr.rows[i].mPointHistory!=null
&& arr.rows[i].mPointHistory!=undefined
&& arr.rows[i].mPointHistory!=''){
var mPointHistory = arr.rows[i].mPointHistory;
for(var m=0;m<mPointHistory.length;m++){
var dataserie =[];
dataserie.push(mPointHistory[m].measuredt);
if(mPointHistory[m].parmvalue!=null){
dataserie.push(mPointHistory[m].parmvalue.toFixed(numtail));
}
dataseries.push(dataserie);
}
}else{
if(arr.rows[i].visualCacheDataList!=null
&& arr.rows[i].visualCacheDataList!=undefined
&& arr.rows[i].visualCacheDataList!=''){
var visualCacheDataList = arr.rows[i].visualCacheDataList;
for(var m=0;m<visualCacheDataList.length;m++){
var dataserie =[];
dataserie.push(visualCacheDataList[m].insdt);
if(visualCacheDataList[m].value!=null){
dataserie.push(visualCacheDataList[m].value.toFixed(numtail));
}
dataseries.push(dataserie);
}
}
}
left_top_line_seriesdata.push({
name: '西江厂',
type: 'line',
smooth: true,
symbol: 'none',
areaStyle: {},
/* barMaxWidth: '10%',
itemStyle: {
normal: {
barBorderRadius: 12,
},
}, */
data: dataseries
});
}
//北江
//出水浊度\出水PH\出水溶解氧
if(arr.rows[i].elementCode=='effluent_turbidity_beijiang'
|| arr.rows[i].elementCode=='effluent_ph_beijiang'
|| arr.rows[i].elementCode=='effluent_dissolved_oxygen_beijiang'){
if(arr.rows[i].visualCacheData.mpcode!=null){
effluentQuality_title += arr.rows[i].visualCacheData.mpcode+",";
}
left_bottom_line_1_legenddata.push(arr.rows[i].name);
if(!selectedAll.some(item=>item.name===arr.rows[i].name)){
var legenddata = {
name : arr.rows[i].name,
flag : selected_EffluentQuality_beijiang
};
selectedAll.push(legenddata);
selected_EffluentQuality_beijiang = false;
}
var dataseries =[];
if(arr.rows[i].mPointHistory!=null
&& arr.rows[i].mPointHistory!=undefined
&& arr.rows[i].mPointHistory!=''){
var mPointHistory = arr.rows[i].mPointHistory;
for(var m=0;m<mPointHistory.length;m++){
var dataserie =[];
dataserie.push(mPointHistory[m].measuredt);
if(mPointHistory[m].parmvalue!=null){
dataserie.push(mPointHistory[m].parmvalue.toFixed(numtail));
}
dataseries.push(dataserie);
}
}else{
if(arr.rows[i].visualCacheDataList!=null
&& arr.rows[i].visualCacheDataList!=undefined
&& arr.rows[i].visualCacheDataList!=''){
var visualCacheDataList = arr.rows[i].visualCacheDataList;
for(var m=0;m<visualCacheDataList.length;m++){
var dataserie =[];
dataserie.push(visualCacheDataList[m].insdt);
if(visualCacheDataList[m].value!=null){
dataserie.push(visualCacheDataList[m].value.toFixed(numtail));
}
dataseries.push(dataserie);
}
}
}
left_bottom_line_1_seriesdata.push({
name: arr.rows[i].name,
type: 'line',
smooth: true,
symbol: 'none',
data: dataseries
});
}
//西江
//出水浊度\出水PH\出水溶解氧
if(arr.rows[i].elementCode=='effluent_turbidity_xijiang'
|| arr.rows[i].elementCode=='effluent_ph_xijiang'
|| arr.rows[i].elementCode=='effluent_dissolved_oxygen_xijiang'){
if(arr.rows[i].visualCacheData.mpcode!=null){
effluentQuality_title += arr.rows[i].visualCacheData.mpcode+",";
}
left_bottom_line_2_legenddata.push(arr.rows[i].name);
if(!selectedAll.some(item=>item.name===arr.rows[i].name)){
var legenddata = {
name : arr.rows[i].name,
flag : selected_EffluentQuality_xijiang
};
selectedAll.push(legenddata);
selected_EffluentQuality_xijiang = false;
}
var dataseries =[];
if(arr.rows[i].mPointHistory!=null
&& arr.rows[i].mPointHistory!=undefined
&& arr.rows[i].mPointHistory!=''){
var mPointHistory = arr.rows[i].mPointHistory;
for(var m=0;m<mPointHistory.length;m++){
var dataserie =[];
dataserie.push(mPointHistory[m].measuredt);
if(mPointHistory[m].parmvalue!=null){
dataserie.push(mPointHistory[m].parmvalue.toFixed(numtail));
}
dataseries.push(dataserie);
}
}else{
if(arr.rows[i].visualCacheDataList!=null
&& arr.rows[i].visualCacheDataList!=undefined
&& arr.rows[i].visualCacheDataList!=''){
var visualCacheDataList = arr.rows[i].visualCacheDataList;
for(var m=0;m<visualCacheDataList.length;m++){
var dataserie =[];
dataserie.push(visualCacheDataList[m].insdt);
if(visualCacheDataList[m].value!=null){
dataserie.push(visualCacheDataList[m].value.toFixed(numtail));
}
dataseries.push(dataserie);
}
}
}
left_bottom_line_2_seriesdata.push({
name: arr.rows[i].name,
type: 'line',
smooth: true,
symbol: 'none',
data: dataseries
});
}
}
}
var selected = {};
if(selectedAll.length>0){
for(var s=0;s<selectedAll.length;s++){
selected[selectedAll[s].name]=selectedAll[s].flag;
}
}
echarts_line('left-middle-line',left_middle_line_legenddata,left_middle_line_seriesdata,selected);
echarts_line('left-bottom-line-1',left_bottom_line_1_legenddata,left_bottom_line_1_seriesdata,selected);
echarts_line('left-bottom-line-2',left_bottom_line_2_legenddata,left_bottom_line_2_seriesdata,selected);
echarts_line_top('left-top-line',left_top_line_legenddata,left_top_line_seriesdata,selected);
echarts_bar_right('right-bottom-bar',right_bottom_bar_legenddata,right_bottom_bar_seriesdata,titleColor);
var data = {value:patrol,name:'巡检完成率'};
doendPie('right-top-pie-1',data);
data = {value:maintenance,name:'维修完成率'};
doendPie('right-top-pie-2',data);
if($("#water_supply_title").length > 0){
$("#water_supply_title").attr("data-mpcode",water_supply_title);
}
if($("#rawWaterQuality_title").length > 0){
$("#rawWaterQuality_title").attr("data-mpcode",rawWaterQuality_title);
}
if($("#effluentQuality_title").length > 0){
$("#effluentQuality_title").attr("data-mpcode",effluentQuality_title);
}
});
getMonitorData(bizid,time_input,jsp_id);
getImgData();
}
function getMonitorData(bizid,time_input,jsp_id){
$.post(ext.contextPath + '/smart/getMonitorData.do', {bizid:bizid,time:time_input,jsp_id:'monitor'} , function(data) {
var arr= JSON.parse(data);
console.log(arr);
if(arr.rows!=null && arr.rows!=undefined && arr.rows!=''){
$('#monitor_pressure').empty();
$('#monitor_flow').empty();
for(var i=0;i<arr.rows.length;i++){
var value =0;
var numtail=0;
var dataMax=0;
var rate = 1;
var nowdate = getNowTime();
if(arr.rows[i].visualCacheConfig!=null
&& arr.rows[i].visualCacheConfig!=undefined
&& arr.rows[i].visualCacheConfig!=''){
var visualCacheConfig = arr.rows[i].visualCacheConfig;
if(visualCacheConfig.numtail!=null && visualCacheConfig.numtail!=undefined && visualCacheConfig.numtail!=''){
numtail = visualCacheConfig.numtail;
}
}
if(arr.rows[i].visualCacheData!=null
&& arr.rows[i].visualCacheData!=undefined
&& arr.rows[i].visualCacheData!=''){
var visualCacheData = arr.rows[i].visualCacheData;
if(visualCacheData.inivalue!=null && visualCacheData.inivalue!=undefined && visualCacheData.inivalue!=''){
value = visualCacheData.inivalue;
}else{
if(visualCacheData.value!=null && visualCacheData.value!=undefined && visualCacheData.value!=''){
value = visualCacheData.value;
}else{
if(arr.rows[i].mPoint!=null && arr.rows[i].mPoint!=undefined && arr.rows[i].mPoint!=''){
var mPoint = arr.rows[i].mPoint;
if(mPoint.parmvalue!=null && mPoint.parmvalue!=undefined && mPoint.parmvalue!=''){
value = mPoint.parmvalue;
}
if(mPoint.alarmmax!=null && mPoint.alarmmax!=undefined && mPoint.alarmmax!=''){
dataMax = mPoint.alarmmax;
}
if(mPoint.numtail!=null && mPoint.numtail!=undefined && mPoint.numtail!=''){
numtail = mPoint.numtail;
}
if(mPoint.measuredt!=null && mPoint.measuredt!=undefined && mPoint.measuredt!=''){
nowdate = mPoint.measuredt;
}
}
}
}
if(visualCacheData.numtail!=null && visualCacheData.numtail!=undefined && visualCacheData.numtail!=''){
numtail = visualCacheData.numtail;
}
if(visualCacheData.insdt!=null && visualCacheData.insdt!=undefined && visualCacheData.insdt!=''){
nowdate = visualCacheData.insdt;
}
if(visualCacheData.rate!=null && visualCacheData.rate!=undefined && visualCacheData.rate!=''){
rate = visualCacheData.rate;
}
}else{
var mPoint = arr.rows[i].mPoint;
if(mPoint!=null && mPoint!=undefined && mPoint!=''){
if(mPoint.parmvalue!=null && mPoint.parmvalue!=undefined && mPoint.parmvalue!=''){
value = mPoint.parmvalue;
}
if(mPoint.alarmmax!=null && mPoint.alarmmax!=undefined && mPoint.alarmmax!=''){
dataMax = mPoint.alarmmax;
}
if(mPoint.numtail!=null && mPoint.numtail!=undefined && mPoint.numtail!=''){
numtail = mPoint.numtail;
}
if(mPoint.measuredt!=null && mPoint.measuredt!=undefined && mPoint.measuredt!=''){
nowdate = mPoint.measuredt;
}
}
}
value = parseFloat(value)*rate;
value = value.toFixed(numtail);
var tableStr='<tr>'+
'<td>'+arr.rows[i].name+'</td>'+
'<td class="'+arr.rows[i].elementCode+'">'+toThousands(value)+'</td>'+
'<td class="nowdate">'+nowdate.substring(11,16)+'</td>'+
'</tr>';
if(arr.rows[i].pid=="monitor_flow"){
$('#monitor_flow').append(tableStr);
}
if(arr.rows[i].pid=="monitor_pressure"){
$('#monitor_pressure').append(tableStr);
}
}
}
});
}
function echarts_line(id,legenddata,seriesdata,selected){
var lifeChart = echarts.getInstanceByDom(document.getElementById(id));
//有的话就获取已有echarts实例的DOM节点。
if (lifeChart != null) { // 如果存在,就进行销毁。
lifeChart.dispose();
}
var option = {
color:color,
tooltip: {
trigger: 'axis'
},
legend: {
data: legenddata,
x:'right',
textStyle: {
color: fontcolor_grey ,
fontSize: 12 ,
},
icon:'roundRect',
selected: selected
},
grid: {
left: '3%',
right: '4%',
bottom: '3%',
containLabel: true
},
xAxis: {
type: 'time',
},
yAxis: {
type: 'value',
axisLine: {
show: true,
},
splitLine: {
show: true,
lineStyle: {
type: 'dashed' ,
}
}
},
series: seriesdata,
};
lifeChart = echarts.init(document.getElementById(id));
lifeChart.setOption(option,true);
lifeChart.on('legendselectchanged', function(obj) {
var selected = obj.selected;
var legend = obj.name;
if(selectedAll.length>0){
for(var s=0;s<selectedAll.length;s++){
if(selectedAll[s].name===legend){
selectedAll[s].flag = selected[legend];
}
}
}
});
}
function echarts_line_top(id,legenddata,seriesdata,selected){
var lifeChart = echarts.getInstanceByDom(document.getElementById(id));
//有的话就获取已有echarts实例的DOM节点。
if (lifeChart != null) { // 如果存在,就进行销毁。
lifeChart.dispose();
}
var option = {
color:[color[5],color[6],color[0]],
tooltip: {
trigger: 'axis'
},
grid: {
left: '3%',
right: '4%',
bottom: '3%',
containLabel: true
},
legend: {
data: legenddata,
x:'right',
textStyle: {
color: fontcolor_grey ,
fontSize: 12 ,
},
icon:'roundRect',
selected: selected
},
xAxis: {
type: 'time',
name:''
},
yAxis: {
type: 'value',
axisLine: {
show: true,
},
max: function (value) {
if(value.max>1){
return Math.floor(value.max*1.3);
}else{
return (value.max+0.2);
}
},
splitLine: {
show: true,
lineStyle: {
type: 'dashed' ,
}
}
},
series: seriesdata,
};
lifeChart = echarts.init(document.getElementById(id));
lifeChart.setOption(option,true);
lifeChart.on('legendselectchanged', function(obj) {
var selected = obj.selected;
var legend = obj.name;
if(selectedAll.length>0){
for(var s=0;s<selectedAll.length;s++){
if(selectedAll[s].name===legend){
selectedAll[s].flag = selected[legend];
}
}
}
});
}
function echarts_bar_right(id,legenddata,seriesdata,titleColor){
var lifeChart = echarts.getInstanceByDom(document.getElementById(id));
//有的话就获取已有echarts实例的DOM节点。
if (lifeChart != null) { // 如果存在,就进行销毁。
lifeChart.dispose();
}
var option = {
color:color,
title: {
text: '月度设备维修次数统计',
textStyle: {
color: titleColor ,
fontSize: 16 ,
},
},
tooltip: {
trigger: 'axis'
},
legend: {
data: legenddata,//['机械设备', '电气设备', '自动化设备', '水质设备'],
top:'30',
x:'right',
textStyle: {
color: fontcolor_grey ,
fontSize: 14 ,
}
},
grid: {
left: '3%',
right: '4%',
bottom: '3%',
top:'85',
containLabel: true
},
xAxis: {
type: 'category',
},
yAxis: {
type: 'value',
name:'次',
axisLine: {
show: true,
},
splitLine: {
show: true,
lineStyle: {
type: 'dashed' ,
}
}
},
series: seriesdata,
};
lifeChart = echarts.init(document.getElementById(id));
lifeChart.setOption(option,true);
}
function doendPie(id,data){
var othVal = 100 - data.value;
var myChart = echarts.init(document.getElementById(id));
var option = {
color: [color_blue_other],
title: {
text: data.value,
subtext: '%',
x: 'center',
y: 'center',
top:'30%',
textStyle: {
fontWeight: 'normal',
color: color_blue,
fontSize: '48'
},
subtextStyle: {
fontWeight: 'normal',
color: color_blue,
fontSize: '16',
verticalAlign :'top'
},
},
legend: {
data:[data.name],
left: '16%',
y: '5%',
icon:'none',
textStyle: {
color: '#a3a9af' ,
lineHeight: 16,
fontSize: 13 ,
fontWeight : 600 ,
},
},
grid: {
top:0,
left:0,
right:0,
bottom:0,
},
series: [{
name: 'Line 1',
type: 'pie',
clockWise: true,
radius: ['50%', '60%'],
center: ['50%', '50%'],
itemStyle: {
normal: {
label: {
show: false
},
labelLine: {
show: false
}
}
},
hoverAnimation: false,
startAngle:90, //起始角度
data: [{
value: data.value,
name: data.name,
itemStyle: {
normal: {
color: color_blue,
label: {
show: false
},
labelLine: {
show: false
}
}
}
}, {
name: '02',
value: othVal
}]
}]
}
myChart.clear();
myChart.setOption(option, true);
}
//添加千分位符合
function toThousands(num) {
var nums =num;
var re=/\d{1,3}(?=(\d{3})+$)/g;
var n1=0;
if(nums!=null && nums!='' && nums!=undefined){
n1=nums.toString().replace(/^(\d+)((\.\d+)?)$/,function(s,s1,s2){return s1.replace(re,"$&,")+s2;});
}
return n1;
}
//配置压力、流量
function showMonitor() {
$.post(ext.contextPath + '/smart/monitor.do',{jsp_id:'monitor',unitId:unitId}, function (data) {
$("#monitorDiv").html(data);
openModal("monitorModal")
});
}
$(function () {
left_top_height = $('.left-top').height();
left_middle_height = $('.left-middle').height();
left_bottom_height = $('.left-bottom').height();
center_top_height = $('.center-top').height();
center_middle_height = $('.center-middle').height();
center_bottom_height = $('.center-bottom').height();
right_top_height = $('.right-top').height();
right_middle_height = $('.right-middle').height();
right_bottom_height = $('.right-bottom').height();
showElement();
/*$('.mask-beijiang').click(function(){
parent.changgeCompany("f31c04e44c9548bdaeca9f54c9e982e2","北江水厂","1");
//parent.changgeCompany("7b19e5c1efe94009b6ba777f096f4caa","泵站所","1");;
});*/
bizid = unitId;
jsp_id = $('#jsp_id').val();
$(document).on('click','.center-middle',function(e){
var fun = "mapClick"; // 函数的名称
try {
if($.isFunction(eval(fun))){
var element = this;
mapClick(element,e);
}
} catch(e) {
console.log('mapClick函数不存在!');
}
});
$(document).on('click','.new-element',function(event){
//防止事件冒泡到DOM树上也就是不触发的任何前辈元素上的事件处理函数。
event.stopPropagation();
});
$(document).on('click','.edit-element',function(event){
//防止事件冒泡到DOM树上也就是不触发的任何前辈元素上的事件处理函数。
event.stopPropagation();
var element = this;
editElement(element,event);
});
$(document).on('click','.btn-box-tool',function(event){
//防止事件冒泡到DOM树上也就是不触发的任何前辈元素上的事件处理函数。
event.stopPropagation();
var widget = $(this).data("widget");
if(widget=='remove'){
$(this).parent().parent().parent().remove();
getImgData();
}
});
$('#switch').bootstrapSwitch({ //初始化按钮
onText:" ",
offText:" ",
onColor:"primary",
offColor:"default",
size:"mini",
handleWidth:10,
labelWidth:20,
onSwitchChange:function(event,state){
if(state==true){
console.log("深色");
addAndRemove4Class('content-wrapper-bg-grey','content-wrapper-bg-darkblue');
addAndRemove4Class('content-wrapper-bg-white','content-wrapper-bg-transparent');
//addAndRemove4Class('font-color-lightBlack','font-color-white');
addAndRemove4Class('font-color-lightBlue','font-color-blue');
addAndRemove4Class('font-color-smalt','font-color-dark-blue');
addAndRemove4Class('font-color-lightWhite','font-color-black');
addAndRemove4Class('font-color-light-blue','font-color-dark-white');
addAndRemove4Class('bgcolor-white','bgcolor-blue');
addAndRemove4Class('right-title-blue','right-title');
addAndRemove4Class('right-title-long-blue','right-title-long');
addAndRemove4Class('waterDataLight','waterData');
addAndRemove4Class('modularLight','modular');
addAndRemove4Class('table_font_black','table_font_white');
fontcolor_black = '#0d2336';
color_blue = '#36FFF9';
color_blue_other = '#1D4F6D';
titleColor = '#ffffff';
img_name = '';
$('.switch-title').html("深色");
}else{
console.log("浅色");
addAndRemove4Class('content-wrapper-bg-darkblue','content-wrapper-bg-grey');
addAndRemove4Class('content-wrapper-bg-transparent','content-wrapper-bg-white');
addAndRemove4Class('font-color-black','font-color-lightWhite');
addAndRemove4Class('font-color-blue','font-color-lightBlue');
addAndRemove4Class('font-color-dark-blue','font-color-smalt');
addAndRemove4Class('font-color-dark-white','font-color-light-blue');
addAndRemove4Class('bgcolor-blue','bgcolor-white');
addAndRemove4Class('right-title','right-title-blue');
addAndRemove4Class('right-title-long','right-title-long-blue');
addAndRemove4Class('waterData','waterDataLight');
addAndRemove4Class('modular','modularLight');
addAndRemove4Class('table_font_white','table_font_black');
fontcolor_black = '#fff';
color_blue = '#1790FF';
color_blue_other = '#E9E9E9';
titleColor = '#0d2336';
img_name = '_blue';
$('.switch-title').html("浅色");
}
getData(bizid);
}
});
echarts_line('left-middle-line',[],[]);
echarts_bar_right('right-bottom-bar',[],[],titleColor);
getData(bizid);
//setInterval("getData('"+bizid+"')",600000);
$(window).resize(function() {
showElement();
getData(bizid);
});
});
function showElement(){
height = $(window).height();
width = $(window).width();
if(height<(global_height*0.1)){
height = global_height;
}
if(width<(global_width*0.1)){
width = global_width;
}
heightV = height/1080;
widthV = width/1690;
var proportion = height/1080;
$('.left-top').height(left_top_height*proportion);
$('.left-top-line').height($('.left-top').height()-30);
$('.left-middle').height(left_middle_height*proportion);
$('.left-middle-line').height($('.left-middle').height()-30);
$('.left-bottom').height(left_bottom_height*proportion);
$('.left-bottom-line').height($('.left-bottom').height()-30);
$('.left-bottom-line').width($('.left-bottom').width());
$('.center-top').height(center_top_height*proportion);
$('.center-middle').height(center_middle_height*proportion);
$('.center-middle').css('background-size',(695*proportion)+'px '+(830*proportion)+'px');
$('.center-bottom').height(center_bottom_height*proportion);
$('.center-bottom-line').height($('.center-bottom').height()-30);
$('.right-top').height(right_top_height*proportion);
$('.right-bottom-bar').height($('.right-top').height()-150*proportion);
$('.right-top-pie').height($('.right-top').height()*0.45);
$('.right-top-pie').width($('.right-top').width()*0.5);
$('.right-bottom').height(right_bottom_height*proportion);
}
function showLine(ele) {
var mpcode = $(ele).attr("data-mpcode");
$.post(ext.contextPath + '/data/showOnlyLine.do', {mpcode: mpcode, unitId: unitId}, function (data2) {
$("#subDiv").html(data2);
openModal('curveModal');
});
}