qinbo
2022-01-12 1ac8e27dc8a227d8fc4a9b73a9f241abcae3af2a
widgetsTS/dataTime/widget.js
@@ -1,5 +1,29 @@
'use script'; //开发环境建议开启严格模式
function getDefaultDateMinLocal() {
  var date = new Date;
  date.setMinutes(date.getMinutes() - 30)
  var year = date.getFullYear(); //年
  var month = date.getMonth(); //月
  var day = date.getDate(); //日
  var hours = date.getHours(); //时
  var min = date.getMinutes(); //分
  if(min >= 0 && min < 15){
    min = 0
  }else if(min >=15 && min < 30){
    min = 15
  }else if(min >=30 && min < 45){
    min = 30
  }else{
    min = 45
  }
  return year + "-" +
    ((month + 1) > 9 ? (month + 1) : "0" + (month + 1)) + "-" +
    (day > 9 ? day : ("0" + day)) + " " +
    (hours > 9 ? hours : ("0" + hours)) + ":" +
    (min > 9 ? min : ("0" + min)) + ":00";
}
function getDefaultDateTimeLocal() {
  var date = new Date;
  date.setHours(date.getHours() - 2);
@@ -56,8 +80,7 @@
    create() {
      this.defaultDate = getDefaultDateLocal();
      this.defaultDateTime = getDefaultDateTimeLocal();
      this.defaultDateMin = getDefaultDateMinLocal();
    }
    //每个窗口创建完成后调用
@@ -68,6 +91,7 @@
        if (value == 'hour') {
          $('#current').text("小时:");
          $('#appDate').hide()
          $('#appDateMin').hide()
          $('#appDateHour').show()
          var tmpDatetime =  $('#appDateHour').val();
          tmpDatetime = tmpDatetime.replace(/\:/g,"").replace(/-/g,"").replace(/\s+/g,"");
@@ -75,21 +99,31 @@
          mars3d.global_variables.queryDataTEnd =  $('#appDateHour').val().substring(0,14)+"15:00";
          mars3d.global_variables.DefaultDateTimeStart =  $('#appDateHour').val().substring(0,11)+"00:00:00";
          mars3d.global_variables.queryDataTStartGeo = tmpDatetime;
        }
        else if (value == 'day') {
          reLoadLayers();
          refreshWidgets();
        }else if (value == 'day') {
          $('#current').text("天:");
          $('#appDate').show()
          $('#appDateMin').hide()
          $('#appDateHour').hide()
          $('#appDate').show()
          var tmpDatetime =  $('#appDate').val() + " 00:00:00";
          tmpDatetime = tmpDatetime.replace(/\:/g,"").replace(/-/g,"").replace(/\s+/g,"");
          mars3d.global_variables.queryDataTStart =  $('#appDate').val() + " 00:00:00";
          mars3d.global_variables.queryDataTEnd = $('#appDate').val()+ " 00:15:00";
          mars3d.global_variables.DefaultDateTimeStart = $('#appDate').val().substring(0,8)+"01 00:00:00";
          mars3d.global_variables.queryDataTStartGeo = tmpDatetime;
          reLoadLayers();
          refreshWidgets();
        }else if(value = 'min'){
          $('#current').text("15分钟(车辆):");
          $('#appDate').hide()
          $('#appDateHour').hide()
          $('#appDateMin').show()
          mars3d.global_variables.queryDataTStartTaxi =   $('#appDateMin').val();
          mars3d.global_variables.queryDataTEnd =  $('#appDateMin').val().substring(0,14) + (Number($('#appDateMin').val().substring(14,16)) + 14).toString() +":59";
          mars3d.global_variables.DefaultDateTimeStart =  $('#appDateMin').val().substring(0,11)+"00:00:00";
          taxi_reLoadLayers();
        }
        mars3d.global_variables.queryDataType = value;
        reLoadLayers();
        refreshWidgets();
      });
      $("#appDate").datetimepicker({
@@ -105,12 +139,10 @@
        initialDate: new Date(),
        todayHighlight: 1  //如果为true, 高亮当前日期
      }).on("changeDate", function () {
        var tmpDatetime =  $('#appDate').val() + " 00:00:00";
        tmpDatetime = tmpDatetime.replace(/\:/g,"").replace(/-/g,"").replace(/\s+/g,"");
        mars3d.global_variables.queryDataTStart =  $('#appDate').val() + " 00:00:00";
        mars3d.global_variables.queryDataTEnd = $('#appDate').val()+ " 00:15:00";
        // mars3d.global_variables.queryDataTEnd = $('#appDate').val()+ " 00:15:00";
        mars3d.global_variables.DefaultDateTimeStart = $('#appDate').val().substring(0,8)+"01 00:00:00";
        mars3d.global_variables.queryDataTStartGeo = tmpDatetime;
@@ -137,9 +169,8 @@
        var tmpDatetime =  $('#appDateHour').val();
        tmpDatetime = tmpDatetime.replace(/\:/g,"").replace(/-/g,"").replace(/\s+/g,"");
        mars3d.global_variables.queryDataTStart =   $('#appDateHour').val();
        mars3d.global_variables.queryDataTEnd =  $('#appDateHour').val().substring(0,14)+"15:00";
        // mars3d.global_variables.queryDataTEnd =  $('#appDateHour').val().substring(0,14)+"15:00";
        mars3d.global_variables.DefaultDateTimeStart =  $('#appDateHour').val().substring(0,11)+"00:00:00";
        mars3d.global_variables.queryDataTStartGeo = tmpDatetime;
@@ -148,7 +179,29 @@
      });
      $("#appDateHour").datetimepicker("setDate", new Date(this.defaultDateTime));
      $('#appDateHour').datetimepicker('setEndDate', new Date(this.defaultDateTime));
      $("#appDateMin").datetimepicker({
        bootcssVer: 3,  //bootstrap-datetimepicker+bootstrap v3,但这个插件使用的时候,并没有和V3相匹配,仍然调用的是bootstrap V2的图标 把bootcssVer的值直接设为3,否则datetimepicker不会显示出上、下个月的箭头
        format: 'yyyy-mm-dd hh:ii:00',
        minView: 'hour',//设置时间选择为年月日 去掉分秒选择
        todayBtn: true, //如果此值为true 或 "linked",则在日期时间选择器组件的底部显示一个 "Today" 按钮用以选择当前日期。如果是true的话,"Today" 按钮仅仅将视图转到当天的日期,如果是"linked",当天日期将会被选中。
        clearBtn: true,
        language: 'zh-CN',
        autoclose: true, //当选择一个日期之后是否立即关闭此日期时间选择器。
        keyboardNavigation: true, //是否允许通过方向键改变日期。
        forceParse: true, //当选择器关闭的时候,是否强制解析输入框中的值。
        initialDate: new Date(),
        todayHighlight: 1,  //如果为true, 高亮当前日期  2022-01-04 06:30:00
        minuteStep:15
      }).on("changeDate", function () {
        mars3d.global_variables.queryDataTStartTaxi =   $('#appDateMin').val();
        console.log(mars3d.global_variables.queryDataTStartTaxi)
        mars3d.global_variables.queryDataTEnd =  $('#appDateMin').val().substring(0,14) + (Number($('#appDateMin').val().substring(14,16)) + 14).toString() +":59";
        mars3d.global_variables.DefaultDateTimeStart =  $('#appDateMin').val().substring(0,11)+"00:00:00";
        taxi_reLoadLayers();
      });
      $("#appDateMin").datetimepicker("setDate", new Date(this.defaultDateMin));
      $('#appDateMin').datetimepicker('setEndDate', new Date(this.defaultDateMin));
    }
    //激活插件