var windowId,proName = window.location.pathname.split("/")[1],sysUrl = "http://"+window.location.host+"/"+proName,toEdit;
var result=["12月","11月","10月","09月","08月","07月","06月","05月","04月","03月","02月","01月"];
var treeSelectId = "-1";
$(function(){
	initCountTime();
	$("#datetimeStart").datebox("setValue",$.getTodayStart(0,"00:00:00"));
	$("#datetimeEnd").datebox("setValue",$.getTodayEnd("23:59:59"));
	
	initTree();	
	initGrid();	
});

//加载列表
function initGrid(){	
	toolbar = [
	      {
		        text:'统计列表',
		        iconCls:'icon-search',
		        handler:function(){
		        	showList();
		        }
	      },{
		        text:'统计图',
		        iconCls:'icon-search',
		        handler:function(){
		        	showBarChart();
		        }
	      },{
				text:"导出Excel",
				iconCls:"icon-search",
				handler:function(){
					showExport("excel");
				}
		  },{
				text:"导出PDF",
				iconCls:"icon-search",
				handler:function(){
					showExport("pdf");
				}
		  },{
				text:"计算公式",
				iconCls:"icon-search",
				handler:function(){
					lookJsgs();
				}
		  },{
				text:"打印",
				iconCls:"icon-search",
				handler:function(){
					dayin();
				}
			}
	];
	showList();
}

//加载统计时间

function initCountTime(){
	var flag=false;
	var date=new Date();
	var year=date.getFullYear();
	var month=date.getMonth()+1;
	var str=year+"年"+(month<10?"0"+month:month)+"月";
	var result=[12,11,10,9,8,7,6,5,4,3,2,1];
	result=result.filter(function(value){
		if(month==value){
			flag=true;
		}
		if(flag){
			if(value<10){
				return "0"+value;
			}else{
				return ""+value;
			}
		}
	});
	$.each(result,function(i,v){
		if(result[i]<10){
			result[i]=year+"年0"+result[i]+"月";
		}else{
			result[i]=year+"年"+result[i]+"月";
		}
	});
	result.unshift("自定义时间");
	$('#countTime').combobox({  
		data : $.obj2ary(result),  
		textField:1,  
		valueField:0,
		panelWidth:148,
		value:str,
		onSelect:function(record){
			var value=record[1].trim();
			if(value=='自定义时间'){
				$("#controlDate").show();
			}else{
				$("#controlDate").hide();
			}
		}
	});
}

function getCurrtentTime(){
	var date = new Date();
	var year = date.getFullYear();
	var month = date.getMonth()+1;
	var day = date.getDate();
	var hour = date.getHours();
	var minute = date.getMinutes();
	var second = date.getSeconds();
	if(month<10){
		month = "0"+month;
	}
	if(day<10){
		day = "0"+day;
	}
	if(hour<10){
		hour = "0"+hour;
	}
	if(minute<10){
		minute = "0"+minute;
	}
	if(second<10){
		second = "0"+second;
	}
	console.log(year + "-" + month + "-" + day + " " + hour + ":" + minute + ":" + second);
	return year + "-" + month + "-" + day + " " + hour + ":" + minute + ":" + second; 
}
$.extend($.fn.datagrid.methods,
		{
	renderAlarmOverviewData:function(n, g, h){
		 var m = n.parent(".datagrid-view:eq(0)"),c;
         var k = m.prev("div").append("<table cellspacing=0 cellpadding=0 style='display:inline-block;height:26px;float:right;'><tbody><tr/></tbody></table>").children("table:eq(1)").find("tbody tr");
         var b = m.parent().height();
         var o = m.parent().width();
         if (!m.next("div.imgcontainer").html()) {
             c = $("<div class='imgcontainer' style='overflow-y:auto; width:99%;height:" + (b - 70) + "px;'></div>");
             m.after(c)
         } else {
             c = m.next("div.imgcontainer")
         }
         if (!g) {
             return
         }
         var f = 0,l = [],e,d,
         j = this;
         var nowTime = getNowTime("-");
         var TABLE='<table  cellspacing="0"  width="90%"  cellpadding="0"  border="1"  align="center"  style="text-align:center;margin:0 auto;	border:1px solid #827d7d;font-size:12px;">\
		           				<thead>\
						        	<tr style="height: 40px;">\
										<td colspan="5" style="font-size:14px;font-weight:bold;border:none">区域设备告警统计</td>\
									</tr>\
						        	<tr  style="border-top: 1px solid #827d7d;">\
										<td colspan="5" style="text-align:right;padding: 15px;border:none" id="zbsj">制表时间：'+getCurrtentTime()+'</td>\
									</tr>\
		           					<tr>\
		           						<td >序号</td>\
        	 							<td>行政区划</td>\
        	 							<td>告警总数</td>\
        	 							<td>已恢复数</td>\
        	 							<td>恢复率</td>\
		           					</tr>\
			           			</thead>\
        	 	<tbody>'
		 var zs = 0;
         var zhf = 0;
         var zhfl = 0;
         for (; (g.data[f]); f++) {
        	 var xzmc = g.data[f].xzmc;
        	 var gjzs = g.data[f].zcount==null?0:g.data[f].zcount;
        	 var hfzs = g.data[f].hfcount==null?0:g.data[f].hfcount;
        	 var hfl = 0;
        	 if(gjzs != 0){
        		 hfl = hfzs/gjzs;       		 
        	 }
        	 if(hfl != 0){        		
        		 hfl = hfl*100; 
        		 hfl = hfl.toFixed(2)+"%";
        	 }
        	 zs = zs + parseInt(gjzs);
        	 zhf = zhf + parseInt(hfzs);
        	TABLE+='<tr>\
        		 		<td>'+(f+1)+'</td>\
        		 		<td><a href="javascript:void(0);" class="ahref" onclick="shownArea(\''+g.data[f].xzbh+'\',\''+xzmc+'\')">'+xzmc+'</a></td>\
        		 		<td>'+gjzs+'</td>\
        		 		<td>'+hfzs+'</td>\
        		 		<td>'+hfl+'</td>\
        	 		 <tr>'
         }
         if(zs != 0){
        	 zhfl = zhf/zs;       	 
         }
         if(zhfl != 0){
        	 zhfl = zhfl*100;
        	 zhfl = zhfl.toFixed(2)+"%";
         }
         TABLE+="<tr>" +
         			"<td colspan='2'>总计</td>" +
         			"<td>"+zs+"</td>" +
         			"<td>"+zhf+"</td>" +
         			"<td>"+zhfl+"</td>" +
         		"<tr>"
		TABLE+='</tbody></table> '
         c.html('<div class="img-box"  style="margin:0 auto;">'+ TABLE+'</div>')
     }
});

//查询条件
function getQueryParams(){
	var sParam = {};
	var countTime = $('#countTime').combobox("getText");
	var datetimeStart = $('#datetimeStart').datebox("getValue");
	var datetimeEnd = $('#datetimeEnd').datebox("getValue");


	var countMonth = "";
	var countDateStart = "";
	var countDateEnd = "";
	if(treeSelectId == '-1'){				// 本地目录
		treeSelectId = "";
	}
	var date=new Date();
	var year=date.getFullYear();
	var month=date.getMonth()+1;
	if("自定义时间"==countTime){
//		sParam.countMonth = $("#datetime").datebox("getValue");	
		countDateStart = datetimeStart;
		countDateEnd = datetimeEnd;
	}else{
		countMonth = countTime.replace("年","-").replace("月","");
		year = countMonth.substring(0,4);
		month = countMonth.substring(5,7);
//		console.log("截取：",year,month);
		if(month !=10 && month.indexOf("0")!=-1){					// 包含0
			month = month.substring(1);
		}	
		if(parseInt(month) < 10){
			countDateStart = year + "-0" + month+"-01";
		}else{
			countDateStart = year + "-" + month+"-01";
		}
		month = parseInt(month)+1;
		if(parseInt(month) > 12){
			year = parseInt(year)+1;
			countDateEnd =  year + "-01-01";
		}else if(month < 10){
			countDateEnd = year + "-0" + month+"-01";
		}else{
			countDateEnd = year + "-" + month+"-01";
		}
	}
	
	/*
	if(countTime.indexOf("年") != -1){				// 是当前月份
		if(month < 10){
			countDateStart = year + "-0" + month+"-01";
		}else{
			countDateStart = year + "-" + month+"-01";
		}
		month = month+1;
		if(month > 12){
			year = year+1;
			countDateEnd =  year + "-01-01";
		}else if(month < 10){
			countDateEnd = year + "-0" + month+"-01";
		}else{
			countDateEnd = year + "-" + month+"-01";
		}		
	}else if(countTime == 0){				// 自定义时间
//		countDateStart = datetimeStart.substring(0,10);
//		countDateEnd = datetimeEnd.substring(0,11);
		countDateStart = datetimeStart;
		countDateEnd = datetimeEnd;		
	}else{
		countMonth = result[countTime];
		countMonth = countMonth.replace("年","-").replace("月","-");
//		console.log("查询：",countMonth);
		year = countMonth.substring(0,4);
		month = countMonth.substring(5,7);
//		console.log("截取：",year,month);
		if(month !=10 && month.indexOf("0")!=-1){					// 包含0
			month = month.substring(1);
		}	
		if(parseInt(month) < 10){
			countDateStart = year + "-0" + month+"-01";
		}else{
			countDateStart = year + "-" + month+"-01";
		}
		month = parseInt(month)+1;
		if(parseInt(month) > 12){
			year = parseInt(year)+1;
			countDateEnd =  year + "-01-01";
		}else if(month < 10){
			countDateEnd = year + "-0" + month+"-01";
		}else{
			countDateEnd = year + "-" + month+"-01";
		}
	}*/
	sParam.timeStart = countDateStart;
	sParam.timeEnd = countDateEnd;
	sParam.areacode = treeSelectId;
//	console.log("查询：",sParam);
	return sParam;
}


//列表展示
function showList(){
	$("#searchGridListDiv").show();
	$("#searchGridPicDiv").hide();
	displayType = "list";
	$('#searchGridList').datagrid({
		toolbar : toolbar,
		bodyCls:'pic-datagrid',
		rownumbers:false,
		queryParams:getQueryParams(),
		url : 'ywalarmcountAction!listYwalarmcountByPage.do',
		/*columns : [[
			{field: 'A',checkbox:'true',width:30},
			{field:'xzmc',title:'行政区划',hidden:false,width:120},
			{field:'zcount',title:'告警总量',hidden:false,width:120},
			{field:'hfcount',title:'已恢复数',hidden:false,width:120},
			{field:'xzbh',title:'恢复率',hidden:false,width:120},				
		]],*/
		onLoadSuccess:function(data){
//	    	  console.log("data",data)
			if(data){
				data.data=data.rows;
				data.totalSize=data.total;
				$('#searchGridList').datagrid("renderAlarmOverviewData",data);
			}
		},

	});	
}



function showExport(type){

//	$.showMsg("待开发！");
	var model = getQueryParams();
	$.ajax({
		type : 'post',
		dataType : 'json',
		data : model,
		url : 'ywalarmcountAction!count_Ywmalarmcount.do',
		success : function(value) {
			if(value){
				countExport(value,type);
			}else{
				$.showMsg("操作失败！");
			}
		}
	});
}
//导出传参条件
function countExport(totalSize,type) {
	var limit = 5000;
	if (totalSize > 5000) {
		top.$.dlg.confirm('记录过多支持前5000条,确定要将记录导出Excel为表格吗?',function(){ 
			execExport(type);
		});		
	} else {
		top.$.dlg.confirm('确认导出?',function(){ 
			execExport(type);
		})
	}
}
// 调用后台
function execExport(type) {
	var model = getQueryParams();
	var downParam = "";
	
	var timeStart = model.timeStart;
	var timeEnd = model.timeEnd;
	var areacode = model.areacode;

	downParam = "areacode="+areacode+"&timeStart="+timeStart+"&timeEnd="+timeEnd;
	if(type=="pdf"){
		document.excelForm.action = 'ywalarmcountAction!expPDF_Ywalarmcount.do?'+downParam;
	}else {
		document.excelForm.action = 'ywalarmcountAction!exp_Ywalarmcount.do?'+downParam;
	}
	document.excelForm.submit(); 
}


function showBarChart(){
	
	$.ajax({
		type : 'post',
		dateType : 'json',
		url : 'ywalarmcountAction!count_showBar.do',
		data : getQueryParams(),
		success : function(res){
//			console.log("结果：",res);
			if(res){
				$("#searchGridPicDiv").show();
				$("#searchGridListDiv").hide();
				$("#searchGridPic").remove();
				$("#searchGridPicDiv").append($("<div id='searchGridPic'  style='height:100%;width:100%;'></div>"));
				var xData=[],y_zcount=[],y_hfcount=[];
				res.forEach(function(item,index){
//					console.log(index,item);
					xData[index] = item.xzmc;
					y_zcount[index] = item.zcount;
					y_hfcount[index] = item.hfcount;
				})
				var data={
						"title":"区域设备告警统计",
						"xAxis": xData,
						"legend":[
						          {"name":"总告警数", "data":y_zcount,  "color":"blue"},
						          {"name":"已恢复数", "data":y_hfcount, "color":"green"},
						        ]};
				$('#searchGridStatics').datagrid({ toolbar : toolbar});
				EchartsBase.barChart({
					id:"searchGridPic",
					data:data
				});
			}
		}
	})
}

function showLineChart(){

	$("#searchGridPicDiv").show();
	$("#searchGridListDiv").hide();
	$("#searchGridPic").remove();
	$("#searchGridPicDiv").append($("<div id='searchGridPic'  style='height:100%;width:100%;'></div>"));
	var data={"title":"区域一机一档监控设备情况统计",xAxis: ["监控","NVR","服务器","应用系统"],"legend":[{"name":"Doset","data":[5, 20, 36, 50],"color":"green"},{"name":"Yeland","data":[51, 210, 36, 10],"color":"blue"},{"name":"Yeland1","data":[21,12,13,14],"color":"red"}]};

	$('#searchGridStatics').datagrid({ toolbar : toolbar});
	//$("#searchGridPic").empty();
	EchartsBase.lineChart({
		id:"searchGridPic",
		data:data
	});
	
}


function initTree() {
    $.ajax({
        type: 'post',
        dataType: 'json',
        url: 'ptxzsAction!query_PtxzsTree.do',
        data: {
            order: " order by jdpx asc "
        },
        success: function (data) {
            var setting = {
                data: {
                    key: {title: "name"}
                },
                callback: {
                    onClick: zTreeOnClick
                }
            };
            if (data) {
                $.fn.zTree.init($("#deviceName"), setting, data);
            }
        }
    });

}

function zTreeOnClick(event, treeid, treeNode) {
    treeSelectId = treeNode.id;
}
function shownArea(xzbh,xzmc){	
	
	var zbsj = $('#zbsj').html();
//	console.log("行政区划",xzbh,zbsj,xzmc);
	var params = getQueryParams();
	params.zbsj = zbsj;
	params.xzbh = xzbh;
	params.xzmc = xzmc;
//	var params = {"zbsj":zbsj,"xzbh":xzbh,"xzmc":xzmc};
	windowId = top.$.createWin({
		title : "详细信息",
		width : 600,
		height : 550,
		data : params,
		url : sysUrl+"/yw/operationcount/videoarchivecount/alarmcount/shownArea.jsp"
	});
}

function lookJsgs(){
	windowId = top.$.createWin({
		title : '计算公式',
		width  :  '400',
		height :  '200',
		url : sysUrl+"/yw/operationcount/videoarchivecount/alarmcount/lookJsgs.jsp"
	});
}

function getNowTime(flag){
	var date = new Date();
    var year = date.getFullYear();
    var month = date.getMonth() + 1;
    var day = date.getDate();
    var hour = date.getHours();
	var minute = date.getMinutes();
	var second = date.getSeconds();
	var minsec = date.getMilliseconds(); //获取当前毫秒数(0-999)
    month = month < 10 ? '0' + month : month;
    day = day < 10 ? '0' + day : day;
    hour = hour < 10 ? '0' + hour : hour;
    second = second < 10 ? '0' + second : second;
    if(flag == "-"){
    	return year +"-"+ month +"-"+ day +" "+ hour +":"+ minute +":"+ second;
    }else{
    	return "" + year + month + day + hour + minute + second + minsec;
    }  
}

function dayin() {
	var userAgent = navigator.userAgent.toLowerCase(); //取得浏览器的userAgent字符串
	if (userAgent.indexOf("trident") > -1) {
		alert("请使用google或者360浏览器打印");
		return false;
	} else if (userAgent.indexOf('msie') > -1) {
		var onlyChoseAlert = simpleAlert({
			"content" : "请使用Google或者360浏览器打印",
			"buttons" : {
				"确定" : function() {
					onlyChoseAlert.close();
				}
			}
		})
		alert("请使用google或者360浏览器打印");
		return false;
	} else {//其它浏览器使用lodop

		var params = getQueryParams();
		var data = {};
		params.rows=10000;
		params.page=1;
		$.ajax({
			type : 'post',
			dateType : 'json',
			url : 'ywalarmcountAction!listYwalarmcountByPage.do',
			data : params,
			async : false,
			success : function(res){
//				console.log("打印：",res);
				if(res == null){
					$.showMsg("暂无数据！");
					return;
				}else{
					if(res.total>0){
						data = res;
					}else{
//						console.log("返回");
						$.showMsg('暂无记录!');
						return;
					}
				}
				
			}
		})
		
		
			
		var f=0
		var g = {"data":data.rows};
		var total = data.total;
		
		if(total>0){
			 var TABLE='<table  cellspacing="0"  width="90%"  cellpadding="0"  border="1"  align="center"  style="text-align:center;margin:0 auto;	border:1px solid #827d7d;font-size:12px;">\
					<thead>\
			        	<tr style="height: 40px;">\
							<td colspan="5" style="font-size:14px;font-weight:bold;border:none">区域设备告警统计</td>\
						</tr>\
			        	<tr  style="border-top: 1px solid #827d7d;">\
							<td colspan="5" style="text-align:right;padding: 15px;border:none" id="zbsj">制表时间：'+getCurrtentTime()+'</td>\
						</tr>\
						<tr>\
							<td >序号</td>\
							<td>行政区划</td>\
							<td>告警总数</td>\
							<td>已恢复数</td>\
							<td>恢复率</td>\
						</tr>\
	    			</thead>\
				<tbody>'
				var zs = 0;
				var zhf = 0;
				var zhfl = 0;
				
				for (; (g.data[f]); f++) {
					var xzmc = g.data[f].xzmc;
					var gjzs = g.data[f].zcount==null?0:g.data[f].zcount;
					var hfzs = g.data[f].hfcount==null?0:g.data[f].hfcount;
					var hfl = 0;
					if(gjzs != 0){
					hfl = hfzs/gjzs;       		 
					}
					if(hfl != 0){        		
					hfl = hfl*100; 
					hfl = hfl.toFixed(2)+"%";
					}
					zs = zs + parseInt(gjzs);
					zhf = zhf + parseInt(hfzs);
					TABLE+='<tr>\
							<td>'+(f+1)+'</td>\
							<td><a href="javascript:void(0);" class="ahref" onclick="shownArea(\''+g.data[f].xzbh+'\',\''+xzmc+'\')">'+xzmc+'</a></td>\
							<td>'+gjzs+'</td>\
							<td>'+hfzs+'</td>\
							<td>'+hfl+'</td>\
						 <tr>'
				}
				if(zs != 0){
				zhfl = zhf/zs;       	 
				}
				if(zhfl != 0){
				zhfl = zhfl*100;
				zhfl = zhfl.toFixed(2)+"%";
				}
				TABLE+="<tr>" +
					"<td colspan='2'>总计</td>" +
					"<td>"+zs+"</td>" +
					"<td>"+zhf+"</td>" +
					"<td>"+zhfl+"</td>" +
				"<tr>"
				TABLE+='</tbody></table> '
		}else{
			return;
		}
 		
		
 		var headstr = "<html><head><title></title></head><body>";
 		var footstr = "</body></html>";
  
 		var wind = window.open("", "newwin","toolbar=no,scrollbars=yes,menubar=no");
		wind.document.body.innerHTML = headstr + TABLE + footstr;
		wind.print();
 
		wind.close();
		
	 
	}
}