解决统计流量时间选择范围问题
This commit is contained in:
@@ -6,13 +6,26 @@ $(function(){
|
||||
getTotalLog();
|
||||
});
|
||||
|
||||
function setTime(){
|
||||
/*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);
|
||||
@@ -21,6 +34,68 @@ function setTimee(){
|
||||
}
|
||||
|
||||
|
||||
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 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;
|
||||
return (clock);
|
||||
}
|
||||
function getMaxDate(day){
|
||||
var clock=currentTime();
|
||||
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 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;
|
||||
|
||||
}
|
||||
}
|
||||
return clock;
|
||||
}
|
||||
|
||||
|
||||
var getTotalLog=function(){
|
||||
/*
|
||||
td需要配置属性有,audit,functionId,compileId,action
|
||||
@@ -208,185 +283,3 @@ var switchMenu = function(topMenuId,functionId,oldMenuName){
|
||||
});
|
||||
//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===========================*/
|
||||
Reference in New Issue
Block a user