674 lines
21 KiB
JavaScript
674 lines
21 KiB
JavaScript
/**
|
||
* 处理配置日志总量以及跳转日志界面
|
||
*/
|
||
$(function(){
|
||
//获取配置日志总数
|
||
getTotalLog();
|
||
});
|
||
|
||
/*function setTime(){
|
||
var chooseDate=new Date($('#beginDate').val());
|
||
chooseDate=chooseDate.setDate(chooseDate.getDate()+7);
|
||
var modifyTime=new Date(chooseDate);
|
||
$('#endDate').val(modifyTime.getFullYear()+"-"+((modifyTime.getMonth()+1)>=10?(modifyTime.getMonth()+1):"0"+(modifyTime.getMonth()+1))+"-"+(modifyTime.getDate()>=10?modifyTime.getDate():'0'+modifyTime.getDate())+' '+(modifyTime.getHours()>=10?modifyTime.getHours():'0'+modifyTime.getHours())+':'+(modifyTime.getMinutes()>=10?modifyTime.getMinutes():'0'+modifyTime.getMinutes())+':'+(modifyTime.getSeconds()>=10?modifyTime.getSeconds():'0'+modifyTime.getSeconds()));
|
||
}*/
|
||
function setTime(dayData){
|
||
var useTime=$('#beginDate').val();
|
||
if(useTime==''){
|
||
return;
|
||
}
|
||
var chooseDate=new Date(useTime);
|
||
chooseDate=chooseDate.setDate(chooseDate.getDate()+dayData);
|
||
var now =new Date();
|
||
if(now.getTime()<new Date(chooseDate).getTime()){
|
||
chooseDate=now;
|
||
}
|
||
var modifyTime=new Date(chooseDate);
|
||
$('#endDate').val(modifyTime.getFullYear()+"-"+((modifyTime.getMonth()+1)>=10?(modifyTime.getMonth()+1):"0"+(modifyTime.getMonth()+1))+"-"+(modifyTime.getDate()>=10?modifyTime.getDate():'0'+modifyTime.getDate())+' '+(modifyTime.getHours()>=10?modifyTime.getHours():'0'+modifyTime.getHours())+':'+(modifyTime.getMinutes()>=10?modifyTime.getMinutes():'0'+modifyTime.getMinutes())+':'+(modifyTime.getSeconds()>=10?modifyTime.getSeconds():'0'+modifyTime.getSeconds()));
|
||
}
|
||
function setTimee(){
|
||
var chooseDate=new Date($('#searchFoundStartTime').val());
|
||
chooseDate=chooseDate.setDate(chooseDate.getDate()+1);
|
||
var modifyTime=new Date(chooseDate);
|
||
$('#searchFoundEndTime').val(modifyTime.getFullYear()+"-"+((modifyTime.getMonth()+1)>=10?(modifyTime.getMonth()+1):"0"+(modifyTime.getMonth()+1))+"-"+(modifyTime.getDate()>=10?modifyTime.getDate():'0'+modifyTime.getDate())+' '+(modifyTime.getHours()>=10?modifyTime.getHours():'0'+modifyTime.getHours())+':'+(modifyTime.getMinutes()>=10?modifyTime.getMinutes():'0'+modifyTime.getMinutes())+':'+(modifyTime.getSeconds()>=10?modifyTime.getSeconds():'0'+modifyTime.getSeconds()));
|
||
}
|
||
|
||
|
||
function currentTime() {
|
||
var now = new Date();
|
||
|
||
var year = now.getFullYear();
|
||
var month = now.getMonth() + 1;
|
||
var day = now.getDate();
|
||
|
||
var hh = now.getHours();
|
||
var mm = now.getMinutes();
|
||
var ss = now.getSeconds();
|
||
var clock = year + "-";
|
||
|
||
if (month < 10) clock += "0";
|
||
clock += month + "-";
|
||
|
||
if (day < 10) clock += "0";
|
||
clock += day + " ";
|
||
|
||
if (hh < 10) clock += "0";
|
||
clock += hh + ":";
|
||
|
||
if (mm < 10) clock += '0';
|
||
clock += mm + ":";
|
||
|
||
if (ss < 10) clock += '0';
|
||
clock += ss;
|
||
|
||
return (clock);
|
||
}
|
||
function getMaxDate(day){
|
||
var clock=currentTime();
|
||
var test=new Date();
|
||
var dt;
|
||
var times=0;
|
||
dt=$("#beginDate").val();
|
||
if(dt!=''){
|
||
times =Date.parse(dt.replace(/-/g,'/'))+day*24*60*60*1000;//时间间隔为10天
|
||
if(times-Date.parse(clock.replace(/-/g,'/'))<0){
|
||
var d1 = new Date(times);
|
||
var year = d1.getFullYear();
|
||
var month = d1.getMonth() + 1; //月份以0开头
|
||
var day = d1.getDate();
|
||
|
||
var hh = d1.getHours();
|
||
var mm = d1.getMinutes();
|
||
var ss = d1.getSeconds();
|
||
|
||
var clock = year + "-";
|
||
|
||
if (month < 10) clock += "0";
|
||
clock += month + "-";
|
||
|
||
if (day < 10) clock += "0";
|
||
clock += day + " ";
|
||
|
||
if (hh < 10) clock += "0";
|
||
clock += hh + ":";
|
||
|
||
if (mm < 10) clock += '0';
|
||
clock += mm + ":";
|
||
|
||
if (ss < 10) clock += '0';
|
||
clock += ss;
|
||
}
|
||
}
|
||
return clock;
|
||
}
|
||
|
||
|
||
var getTotalLog=function(){
|
||
/*
|
||
td需要配置属性有,audit,functionId,compileId,action
|
||
*/
|
||
var data={};
|
||
//data.date=new Date();
|
||
data.compileIds=[];
|
||
data.serviceIds=[];
|
||
data.objs=[];
|
||
// data.url=null;
|
||
$("td[compileId]").each(function(){
|
||
var audit=$(this).attr("audit");
|
||
var compileId=$(this).attr("compileId");
|
||
var serviceId=$(this).attr("serviceId");
|
||
var functionId=$(this).attr("functionId");
|
||
/* if(data.url==null){
|
||
data.url=$(this).attr("url");
|
||
}*/
|
||
if(audit&&compileId&&functionId&&serviceId){
|
||
if(audit != 0){
|
||
var has=false;
|
||
for(var i=0;i<data.serviceIds.length;i++){
|
||
if(data.serviceIds[i]==$(this).attr("serviceId")){
|
||
has=true;
|
||
}
|
||
}
|
||
if(!has){
|
||
data.serviceIds.push($(this).attr("serviceId"));
|
||
}
|
||
//$(this).attr("date",data.date.getTime());
|
||
data.compileIds.push($(this).attr("compileId"));
|
||
data.functionId=$(this).attr("functionId");
|
||
data.objs.push($(this));
|
||
}else{
|
||
$(this).html("0");
|
||
}
|
||
}else{
|
||
$(this).html("0");
|
||
}
|
||
});
|
||
if(data.compileIds.length>0){
|
||
GetLogTotal(data);
|
||
}
|
||
|
||
}
|
||
var GetLogTotal=function(_data){
|
||
var pathName=window.document.location.pathname.substring(0,window.document.location.pathname.indexOf("/nis")+4);
|
||
var timeStamp;
|
||
if(_data.date){
|
||
timeStamp=_data.date.valueOf();
|
||
}/*else{
|
||
timeStamp=(new Date()).valueOf();
|
||
}*/
|
||
var totalTrs=$(_data.objs);
|
||
var timeout=$.validator.messages.timeout;
|
||
var failed=$.validator.messages.failed;
|
||
var request=$.ajax({
|
||
type:'post',
|
||
timeout:10000,//超时时间设置,查询接口时间过长超时
|
||
url:pathName+'/report/ajaxGetLogTotal',
|
||
data:{"endTime":timeStamp,"serviceIds":_data.serviceIds.join(','),"functionId":_data.functionId,"compileIds":_data.compileIds.join(',')},
|
||
dataType:'json',
|
||
async:true,
|
||
success:function(data,textStatus){//处理返回结果
|
||
if(textStatus=="success"){
|
||
totalTrs.each(function(){
|
||
var hasLog=false;
|
||
for(var i=0;i<data.length;i++){
|
||
if($(this).attr("compileId")==data[i].compileId){
|
||
var serviceId= $(this).attr("serviceId");
|
||
$(this).attr("id",i+"logTotal");
|
||
//$(this).html(data[i].sum);
|
||
$(this).html("<a href='javascript:;' onclick='logSearch(\""+data[i].compileId+"\",\""+serviceId+"\")'>"+data[i].sum+"<a>");
|
||
$(this).parent("tr").find("td:eq(1)").html("<a href='javascript:;' onclick='toLogSearch("+i+")'>"+data[i].compileId+"<a>");
|
||
hasLog=true;
|
||
}
|
||
}
|
||
if(!hasLog){
|
||
$(this).html("0");
|
||
}
|
||
})
|
||
}
|
||
},
|
||
complete:function(XMLHttpRequest,status){//超时设置
|
||
if(status=="timeout"){
|
||
totalTrs.each(function(){
|
||
$(this).html(timeout);
|
||
})
|
||
}else if(status !="success"){
|
||
totalTrs.each(function(){
|
||
$(this).html(failed);
|
||
})
|
||
}
|
||
}
|
||
});
|
||
}
|
||
|
||
var toLogSearch = function(index){
|
||
// 保存配置界面URL
|
||
$("#searchForm").each(function(){
|
||
var cfgUrl = $(this).attr("action");
|
||
sessionStorage.removeItem('cfg_url');
|
||
sessionStorage.setItem('cfg_url',cfgUrl);
|
||
});
|
||
|
||
var td = document.getElementById(index+"logTotal");
|
||
$("td[compileId]").each(function(){
|
||
if($(this).attr("id") == index+"logTotal"){
|
||
// 获取检索日志参数
|
||
var serviceId=$(this).attr("serviceId");
|
||
var compileId=$(this).attr("compileId");
|
||
var functionId=$(this).attr("functionId");
|
||
var date=$(this).attr("date");
|
||
var pathName=window.document.location.pathname.substring(0,window.document.location.pathname.indexOf("/nis")+4);
|
||
|
||
switchMenu("152",functionId);
|
||
window.location.href = pathName+"/toLogSearch?service="+serviceId+"&functionId="+functionId+"&cfgId="+compileId+"&date="+date+"&isLogTotalSearch=yes";
|
||
|
||
}
|
||
});
|
||
|
||
}
|
||
|
||
var switchMenu = function(topMenuId,functionId,oldMenuName){
|
||
// 顶部菜单切换 menuId: Policies/86 Logs/152
|
||
$(".hor-menu ul li",parent.document).each(function(){
|
||
var id = $(this).children("a").attr("id");
|
||
if(id == topMenuId){
|
||
$(this).addClass("active");
|
||
}else{
|
||
$(this).removeClass("active");
|
||
}
|
||
});
|
||
|
||
// 保留左侧菜单特征
|
||
var menusObj = $(".page-sidebar ul[class!='hide'] .active",parent.document);
|
||
var firstMenuName = menusObj.attr("menu-name");
|
||
var lastMenuName = $(menusObj,parent.document).last("li[class='nav-item active']").attr("menu-name");
|
||
|
||
var middleMenu = new Array();
|
||
$(menusObj,parent.document).find("li").each(function(){
|
||
if($(this).hasClass("active")){
|
||
middleMenu.push($(this).attr("menu-name"));
|
||
}
|
||
});
|
||
|
||
if(topMenuId == 152){
|
||
if(functionId == 8 || functionId == 35){// HTTP or Mail
|
||
lastMenuName = middleMenu[0];
|
||
}
|
||
sessionStorage.removeItem('old_memu_name');
|
||
sessionStorage.setItem('old_memu_name',middleMenu[middleMenu.length-1]);
|
||
}else{
|
||
lastMenuName = oldMenuName;
|
||
}
|
||
|
||
// 左侧菜单切换
|
||
$(".page-sidebar",parent.document).find("ul[id]").each(function(){
|
||
var id = $(this).attr("id")
|
||
if(id.indexOf(topMenuId) != -1){
|
||
$(this).removeClass("hide");
|
||
// 收回原展开的菜单
|
||
$(this).find("li").each(function(index){
|
||
$(this).children("a").children("span").next().removeClass("open");
|
||
$(this).children("ul").hide();
|
||
});
|
||
var count = 0;
|
||
// 选中左侧菜单
|
||
$(this).find("li").each(function(index){
|
||
if($(this).attr("menu-name") == lastMenuName){
|
||
count++;
|
||
$(this).children("a").trigger("click");// 选中底层菜单
|
||
$(this).parents("li").each(function(){
|
||
$(this).addClass("active open");
|
||
$(this).children("a").children("span").next().addClass("open");
|
||
$(this).children("ul").show();
|
||
});
|
||
if(topMenuId == 86){
|
||
if(functionId == 35 && count == 1){// HTTP/Mail(Advanced)
|
||
return true;
|
||
}
|
||
return false;
|
||
}
|
||
}
|
||
});
|
||
|
||
}else{
|
||
$(this).addClass("hide");
|
||
|
||
}
|
||
});
|
||
//loading('onloading');
|
||
}
|
||
/*======================时间验证方法start===========================*/
|
||
//startTimeSelector:输入框开始时间选择器;
|
||
//endTimeSelector:输入框结束时间选择器;
|
||
//granule:时间粒度(数字);
|
||
//unit:时间粒度单位(h-小时,d-天,w-周,m-月);
|
||
//formate:时间格式;默认格式:yyyy-MM-dd hh:mm:ss
|
||
//future:选择的时间是否可以为未来时间 true or false 默认false(不能为未来时间)
|
||
function setEndTime(startTimeSelector,endTimeSelector,granule,unit,formate,future){
|
||
|
||
if(strIsBlank(granule)||strIsBlank(unit)){
|
||
console.log("时间粒度或时间单位为空");
|
||
return;
|
||
}
|
||
|
||
if(strIsBlank(startTimeSelector)||strIsBlank(endTimeSelector)){
|
||
console.log("时间输入框选择器为空");
|
||
return;
|
||
}
|
||
|
||
if(strIsBlank(formate)){
|
||
formate="yyyy-MM-dd hh:mm:ss"
|
||
}
|
||
if(future==null || future==undefined){
|
||
future=false;
|
||
}
|
||
var startTimeVal=$(startTimeSelector).val();
|
||
var endTimeVal=$(endTimeSelector).val();
|
||
|
||
var startTime;
|
||
var endTime;
|
||
|
||
var diff=getTimeDiff(granule,unit);//得到时间粒度差值
|
||
|
||
if(!strIsBlank(endTimeVal)){
|
||
endTime=new Date(endTimeVal);
|
||
var currentTime=new Date().getTime();
|
||
if(!future&&endTime.getTime()>currentTime){ //endTime不能是未来时间
|
||
endTime=new Date();
|
||
}
|
||
if(strIsBlank(startTimeVal)){
|
||
startTime=new Date(endTime.getTime()-diff);
|
||
}else{//startTime和endTime都不为空
|
||
startTime=new Date(startTimeVal);
|
||
if(endTime.getTime()-startTime.getTime()>diff||endTime.getTime()-startTime.getTime()<=0){//startTime不在时间粒度之内
|
||
startTime=new Date(endTime.getTime()-diff);
|
||
}
|
||
}
|
||
|
||
}else{
|
||
if(strIsBlank(startTimeVal)){//startTime and endTime 都为空
|
||
endTime=new Date();
|
||
startTime=new Date(endTime.getTime()-diff);
|
||
}else{//startTime 不为空,endTime为空
|
||
setStartTime(startTimeSelector,endTimeSelector,granule,unit,formate,future);
|
||
return;
|
||
}
|
||
}
|
||
|
||
$(startTimeSelector).val(dateFtt(formate,startTime));
|
||
$(endTimeSelector).val(dateFtt(formate,endTime));
|
||
}
|
||
|
||
//startTimeSelector:输入框开始时间选择器;
|
||
//endTimeSelector:输入框结束时间选择器;
|
||
//granule:时间粒度(数字);
|
||
//unit:时间粒度单位(h-小时,d-天,w-周,m-月);
|
||
//formate:时间格式;默认格式:yyyy-MM-dd hh:mm:ss
|
||
//future:选择的时间是否可以为未来时间 true or false 默认false(不能为未来时间)
|
||
function setStartTime(startTimeSelector,endTimeSelector,granule,unit,formate,future){
|
||
|
||
if(strIsBlank(granule)||strIsBlank(unit)){
|
||
//console.log("时间粒度或时间单位为空");
|
||
return;
|
||
}
|
||
|
||
if(strIsBlank(startTimeSelector)||strIsBlank(endTimeSelector)){
|
||
//console.log("时间输入框选择器为空");
|
||
return;
|
||
}
|
||
|
||
if(strIsBlank(formate)){
|
||
formate="yyyy-MM-dd hh:mm:ss"
|
||
}
|
||
|
||
if(future==null || future==undefined){
|
||
future=false;
|
||
}
|
||
var startTimeVal=$(startTimeSelector).val();
|
||
var endTimeVal=$(endTimeSelector).val();
|
||
|
||
var startTime;
|
||
var endTime;
|
||
|
||
var diff=getTimeDiff(granule,unit);//得到时间粒度差值
|
||
|
||
if(!strIsBlank(startTimeVal)){
|
||
startTime=new Date(startTimeVal);
|
||
var currentTime=new Date().getTime();
|
||
if(!future&&startTime.getTime()>currentTime){//startTime是一个超过当前时间值
|
||
startTime=new Date(currentTime-diff);
|
||
}
|
||
if(strIsBlank(endTimeVal)){
|
||
if(startTime.getTime()+diff>currentTime){
|
||
endTime=new Date();
|
||
}else{
|
||
endTime=new Date(startTime.getTime()+diff);
|
||
}
|
||
}else{//startTime和endTime都不为空
|
||
endTime=new Date(endTimeVal);
|
||
if(endTime.getTime()-startTime.getTime()>diff||endTime.getTime()-startTime.getTime()<=0){//endTime不在时间粒度之内
|
||
|
||
if(startTime.getTime()+diff>currentTime){
|
||
endTime=new Date();
|
||
startTime=new Date(endTime.getTime()-5*60*1000);
|
||
}else{
|
||
endTime=new Date(startTime.getTime()+diff);
|
||
}
|
||
}
|
||
}
|
||
}else{
|
||
if(strIsBlank(endTimeVal)){//startTime和endTime 都为空
|
||
endTime=new Date();
|
||
startTime=new Date(endTime.getTime()-diff);
|
||
|
||
}else{
|
||
setEndTime(startTimeSelector,endTimeSelector,granule,unit,formate,future);
|
||
return;
|
||
}
|
||
}
|
||
|
||
$(startTimeSelector).val(dateFtt(formate,startTime));
|
||
$(endTimeSelector).val(dateFtt(formate,endTime));
|
||
}
|
||
|
||
function strIsBlank(obj){
|
||
if(obj==null || obj==undefined|| obj==''){
|
||
return true;
|
||
}else{
|
||
return false;
|
||
}
|
||
}
|
||
|
||
/*得到时间差值 单位毫秒*/
|
||
function getTimeDiff(granule,unit){
|
||
var diff=0;
|
||
switch(unit){
|
||
case 'h'://小时为单位
|
||
diff=granule*60*60*1000;
|
||
break;
|
||
case 'd'://天为单位
|
||
diff=granule*24*60*60*1000;
|
||
break;
|
||
case 'w'://周为单位
|
||
diff=granule*7*24*60*60*1000;
|
||
break;
|
||
case 'm'://月为单位
|
||
diff=granule*30*24*60*60*1000;
|
||
break;
|
||
default:
|
||
diff=granule*60*60*1000;
|
||
}
|
||
return diff;
|
||
}
|
||
|
||
function dateFtt(fmt,date){
|
||
var o = {
|
||
"M+" : date.getMonth()+1, //月份
|
||
"d+" : date.getDate(), //日
|
||
"h+" : date.getHours(), //小时
|
||
"m+" : date.getMinutes(), //分
|
||
"s+" : date.getSeconds(), //秒
|
||
"q+" : Math.floor((date.getMonth()+3)/3), //季度
|
||
"S" : date.getMilliseconds() //毫秒
|
||
};
|
||
if(/(y+)/.test(fmt))
|
||
fmt=fmt.replace(RegExp.$1, (date.getFullYear()+"").substr(4 - RegExp.$1.length));
|
||
for(var k in o)
|
||
if(new RegExp("("+ k +")").test(fmt))
|
||
fmt = fmt.replace(RegExp.$1, (RegExp.$1.length==1) ? (o[k]) : (("00"+ o[k]).substr((""+ o[k]).length)));
|
||
return fmt;
|
||
}
|
||
/*======================时间验证方法end===========================*/
|
||
|
||
|
||
|
||
|
||
/*======================新增按照需求指定时间范围,如取到天、小时等start=====================================*/
|
||
//startTimeSelector:输入框开始时间选择器;
|
||
//endTimeSelector:输入框结束时间选择器;
|
||
//granule:时间粒度(数字);
|
||
//unit:时间粒度单位(h-小时,d-天,w-周,m-月);
|
||
//formate:时间格式;默认格式:yyyy-MM-dd hh:mm:ss
|
||
//future:选择的时间是否可以为未来时间 true or false 默认false(不能为未来时间)
|
||
//formatParm有效时间范围参数:yyyy-MM-dd HH例如时间范围限制到小时:yyyy-MM-dd HH:00:00;yyyy-MM-dd例如时间范围限制到天:yyyy-MM-dd 00:00:00
|
||
function setEndTimeByFormat(startTimeSelector,endTimeSelector,granule,unit,formate,future,formatParm){
|
||
|
||
if(strIsBlank(granule)||strIsBlank(unit)){
|
||
console.log("时间粒度或时间单位为空");
|
||
return;
|
||
}
|
||
|
||
if(strIsBlank(startTimeSelector)||strIsBlank(endTimeSelector)){
|
||
console.log("时间输入框选择器为空");
|
||
return;
|
||
}
|
||
|
||
if(strIsBlank(formate)){
|
||
formate="yyyy-MM-dd hh:mm:ss"
|
||
}
|
||
var endStr="";
|
||
if(strIsBlank(formatParm)){
|
||
formatParm = formate;
|
||
}else{
|
||
if((formate.length-formatParm.length) == 3){
|
||
endStr="00";
|
||
}else if((formate.length-formatParm.length) == 6){
|
||
endStr=":00:00";
|
||
}else if((formate.length-formatParm.length) == 9){
|
||
endStr=" 00:00:00";
|
||
}else{
|
||
endStr="";
|
||
}
|
||
}
|
||
|
||
if(future==null || future==undefined){
|
||
future=false;
|
||
}
|
||
var startTimeVal=$(startTimeSelector).val();
|
||
var endTimeVal=$(endTimeSelector).val();
|
||
//alert(startTimeVal);
|
||
//alert(endTimeVal);
|
||
//alert(startTimeVal.substr(0,formatParm.length-1);
|
||
var startTime;
|
||
var endTime;
|
||
|
||
var diff=getTimeDiff(granule,unit);//得到时间粒度差值
|
||
|
||
if(!strIsBlank(endTimeVal)){
|
||
endTime=new Date(endTimeVal);
|
||
var currentTime=new Date().getTime();
|
||
if(!future&&endTime.getTime()>currentTime){ //endTime不能是未来时间
|
||
endTime=new Date();
|
||
}
|
||
if(strIsBlank(startTimeVal)){
|
||
startTime=new Date(endTime.getTime()-diff);
|
||
}else{//startTime和endTime都不为空
|
||
startTime=new Date(startTimeVal);
|
||
if(endTime.getTime()-startTime.getTime()>diff||endTime.getTime()-startTime.getTime()<=0){//startTime不在时间粒度之内
|
||
startTime=new Date(endTime.getTime()-diff);
|
||
}
|
||
}
|
||
|
||
}else{
|
||
if(strIsBlank(startTimeVal)){//startTime and endTime 都为空
|
||
endTime=new Date();
|
||
startTime=new Date(endTime.getTime()-diff);
|
||
}else{//startTime 不为空,endTime为空
|
||
setStartTimeByFormat(startTimeSelector,endTimeSelector,granule,unit,formate,future);
|
||
return;
|
||
}
|
||
}
|
||
|
||
//$(startTimeSelector).val(dateFtt(formate,startTime));
|
||
//$(endTimeSelector).val(dateFtt(formate,endTime));
|
||
$(startTimeSelector).val(dateFtt(formatParm,startTime)+endStr);
|
||
$(endTimeSelector).val(dateFtt(formatParm,endTime)+endStr);
|
||
|
||
}
|
||
|
||
//startTimeSelector:输入框开始时间选择器;
|
||
//endTimeSelector:输入框结束时间选择器;
|
||
//granule:时间粒度(数字);
|
||
//unit:时间粒度单位(h-小时,d-天,w-周,m-月);
|
||
//formate:时间格式;默认格式:yyyy-MM-dd hh:mm:ss
|
||
//future:选择的时间是否可以为未来时间 true or false 默认false(不能为未来时间)
|
||
function setStartTimeByFormat(startTimeSelector,endTimeSelector,granule,unit,formate,future,formatParm){
|
||
|
||
if(strIsBlank(granule)||strIsBlank(unit)){
|
||
//console.log("时间粒度或时间单位为空");
|
||
return;
|
||
}
|
||
|
||
if(strIsBlank(startTimeSelector)||strIsBlank(endTimeSelector)){
|
||
//console.log("时间输入框选择器为空");
|
||
return;
|
||
}
|
||
|
||
if(strIsBlank(formate)){
|
||
formate="yyyy-MM-dd hh:mm:ss"
|
||
}
|
||
|
||
var endStr="";
|
||
if(strIsBlank(formatParm)){
|
||
formatParm = formate;
|
||
}else{
|
||
if((formate.length-formatParm.length) == 3){
|
||
endStr="00";
|
||
}else if((formate.length-formatParm.length) == 6){
|
||
endStr=":00:00";
|
||
}else if((formate.length-formatParm.length) == 9){
|
||
endStr=" 00:00:00";
|
||
}else{
|
||
endStr="";
|
||
}
|
||
}
|
||
if(future==null || future==undefined){
|
||
future=false;
|
||
}
|
||
var startTimeVal=$(startTimeSelector).val();
|
||
var endTimeVal=$(endTimeSelector).val();
|
||
|
||
var startTime;
|
||
var endTime;
|
||
|
||
var diff=getTimeDiff(granule,unit);//得到时间粒度差值
|
||
|
||
if(!strIsBlank(startTimeVal)){
|
||
startTime=new Date(startTimeVal);
|
||
var currentTime=new Date().getTime();
|
||
if(!future&&startTime.getTime()>currentTime){//startTime是一个超过当前时间值
|
||
startTime=new Date(currentTime-diff);
|
||
}
|
||
if(strIsBlank(endTimeVal)){
|
||
if(startTime.getTime()+diff>currentTime){
|
||
endTime=new Date();
|
||
}else{
|
||
endTime=new Date(startTime.getTime()+diff);
|
||
}
|
||
}else{//startTime和endTime都不为空
|
||
endTime=new Date(endTimeVal);
|
||
if(endTime.getTime()-startTime.getTime()>diff||endTime.getTime()-startTime.getTime()<=0){//endTime不在时间粒度之内
|
||
|
||
if(startTime.getTime()+diff>currentTime){
|
||
endTime=new Date();
|
||
startTime=new Date(endTime.getTime()-5*60*1000);
|
||
}else{
|
||
endTime=new Date(startTime.getTime()+diff);
|
||
}
|
||
}
|
||
}
|
||
}else{
|
||
if(strIsBlank(endTimeVal)){//startTime和endTime 都为空
|
||
endTime=new Date();
|
||
startTime=new Date(endTime.getTime()-diff);
|
||
|
||
}else{
|
||
setEndTimeByFormat(startTimeSelector,endTimeSelector,granule,unit,formate,future);
|
||
return;
|
||
}
|
||
}
|
||
|
||
//$(startTimeSelector).val(dateFtt(formate,startTime));
|
||
//$(endTimeSelector).val(dateFtt(formate,endTime));
|
||
$(startTimeSelector).val(dateFtt(formatParm,startTime)+endStr);
|
||
$(endTimeSelector).val(dateFtt(formatParm,endTime)+endStr);
|
||
}
|
||
|
||
function logSearch(cfgId,serviceId){
|
||
var title=$.validator.messages.log_trend;
|
||
var url=$("#jbox_cfg_url",parent.document).val();
|
||
url=url+"?cfgId="+cfgId+"&serviceId="+serviceId;
|
||
top.$.jBox("iframe:"+url, {
|
||
title: title,
|
||
width: $(document).width()*0.8,
|
||
height: $(document).height()*0.8,
|
||
buttons: { close : true },
|
||
loaded : function(h) { //隐藏滚动条
|
||
$(".jbox-content", top.document).css( "overflow-y", "hidden");
|
||
}
|
||
|
||
});
|
||
//alert(cfgId+'======'+url);
|
||
}
|
||
|
||
/*======================新增按照需求指定时间范围,如取到天、小时等end=====================================*/
|