'use script'; //开发环境建议开启严格模式
|
|
function getDefaultDateMinLocal() {
|
var date = new Date;
|
date.setMinutes(date.getMinutes() - 45)
|
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);
|
var year = date.getFullYear();//年
|
var month = date.getMonth();//月
|
var day = date.getDate();//日
|
var hours = date.getHours();//时
|
return year + "-" +
|
((month + 1) > 9 ? (month + 1) : "0" + (month + 1)) + "-" +
|
(day > 9 ? day : ("0" + day)) + " " +
|
(hours > 9 ? hours : ("0" + hours)) + ":00:00";
|
}
|
|
|
function getDefaultDateLocal() {
|
var date = new Date;
|
date.setDate(date.getDate() - 1);
|
var year = date.getFullYear();//年
|
var month = date.getMonth();//月
|
var day = date.getDate();//日
|
var hours = date.getHours();//时
|
return year + "-" +
|
((month + 1) > 9 ? (month + 1) : "0" + (month + 1)) + "-" +
|
(day > 9 ? day : ("0" + day)) + " 00:00:00";
|
}
|
|
function applyDateType() {
|
var dateType = $('input[type=radio][name=datatype]').val();
|
return dateType;
|
}
|
|
function getAppDateTime() {
|
return $('#appDate').val();
|
}
|
|
|
(function (window, mars3d) {
|
//创建widget类,需要继承BaseWidget
|
class MyWidget extends mars3d.widget.BaseWidget {
|
//外部资源配置
|
get resources() {
|
return ['view.css']
|
}
|
//页面配置, append是添加DOM节点到html中的方式
|
get view() {
|
return {
|
type: 'append',
|
url: 'view.html',
|
parent: "#centerDiv"
|
}
|
}
|
|
//初始化[仅执行1次]
|
create() {
|
this.defaultDate = getDefaultDateLocal();
|
this.defaultDateTime = getDefaultDateTimeLocal();
|
this.defaultDateMin = getDefaultDateMinLocal();
|
}
|
|
//每个窗口创建完成后调用
|
winCreateOK(opt, result) {
|
//此处可以绑定页面dom事件
|
$('input[type=radio][name=datatype]').change(function () {
|
let value = $("input[type=radio][name=datatype]:checked").val()
|
console.log("value",value)
|
if (value == 'hour') {
|
$('#current').text("小时:");
|
$('#appDate').hide()
|
$('#appDateMin').hide()
|
$('#appDateHour').show()
|
var tmpDatetime = $('#appDateHour').val();
|
tmpDatetime = tmpDatetime.replace(/\:/g,"").replace(/-/g,"").replace(/\s+/g,"");
|
mars3d.global_variables.queryDataTStart = $('#appDateHour').val();
|
mars3d.global_variables.queryDataTEnd = $('#appDateMin').val().substring(0,14) + (Number($('#appDateMin').val().substring(14,16)) + 14).toString() +":59";
|
// 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;
|
mars3d.global_variables.queryDataType = value;
|
mars3d.global_variables.timetype = "hour";
|
reLoadLayers();
|
refreshWidgets();
|
timetype_change1();
|
timetype_change2();
|
timetype_change3();
|
timetype_change4();
|
// timetype_change5()
|
}else if (value == 'day') {
|
$('#current').text("天:");
|
$('#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 = $('#appDateMin').val().substring(0,14) + (Number($('#appDateMin').val().substring(14,16)) + 14).toString() +":59";
|
// 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;
|
mars3d.global_variables.queryDataType = value;
|
mars3d.global_variables.timetype = "day";
|
reLoadLayers();
|
refreshWidgets();
|
timetype_change1();
|
timetype_change2();
|
timetype_change3();
|
timetype_change4();
|
// timetype_change5()
|
|
}else if(value = 'min'){
|
console.log("this is min ")
|
$('#current').text("15分钟(车辆):");
|
$('#appDate').hide()
|
$('#appDateHour').hide()
|
$('#appDateMin').show()
|
// mars3d.global_variables.queryDataTStart = $('#appDateMin').val();
|
|
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";
|
mars3d.global_variables.timetype = "min";
|
console.log($('#appDateMin').val(),mars3d.global_variables.queryDataTEnd,mars3d.global_variables.DefaultDateTimeStart)
|
|
let change1 = mars3d.widget.getClass('widgetsTS/widget_summary/widget.js');
|
let change2 = mars3d.widget.getClass('widgetsTS/widget_search/widget.js');
|
let change3 = mars3d.widget.getClass('widgetsTS/widget_grid/widget.js');
|
let change4 = mars3d.widget.getClass('widgetsTS/windsetting/widget.js');
|
if(change1 != undefined||change2 != undefined||change3 != undefined||change4 != undefined){
|
haoutil.msg("请切换至天或时查看数据!!!")
|
}
|
|
|
taxi_reLoadLayers();
|
timetype_change1();
|
timetype_change2();
|
timetype_change3();
|
timetype_change4();
|
// timetype_change5()
|
// refreshWidgets();
|
}
|
});
|
|
$("#appDate").datetimepicker({
|
bootcssVer: 3, //bootstrap-datetimepicker+bootstrap v3,但这个插件使用的时候,并没有和V3相匹配,仍然调用的是bootstrap V2的图标 把bootcssVer的值直接设为3,否则datetimepicker不会显示出上、下个月的箭头
|
format: 'yyyy-mm-dd',
|
minView: 'month',//设置时间选择为年月日 去掉时分秒选择
|
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, 高亮当前日期
|
}).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.DefaultDateTimeStart = $('#appDate').val().substring(0,8)+"01 00:00:00";
|
mars3d.global_variables.queryDataTStartGeo = tmpDatetime;
|
mars3d.global_variables.queryDataType = "day";
|
reLoadLayers();
|
refreshWidgets();
|
|
});
|
$("#appDate").datetimepicker("setDate", new Date(this.defaultDate));
|
$("#appDate").datetimepicker("setEndDate", new Date(this.defaultDate));
|
$("#appDateHour").datetimepicker({
|
bootcssVer: 3, //bootstrap-datetimepicker+bootstrap v3,但这个插件使用的时候,并没有和V3相匹配,仍然调用的是bootstrap V2的图标 把bootcssVer的值直接设为3,否则datetimepicker不会显示出上、下个月的箭头
|
format: 'yyyy-mm-dd hh:00:00',
|
minView: 'day',//设置时间选择为年月日 去掉时分秒选择
|
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, 高亮当前日期
|
}).on("changeDate", function () {
|
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.DefaultDateTimeStart = $('#appDateHour').val().substring(0,11)+"00:00:00";
|
mars3d.global_variables.queryDataTStartGeo = tmpDatetime;
|
mars3d.global_variables.queryDataType = "hour";
|
reLoadLayers();
|
refreshWidgets();
|
});
|
$("#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));
|
}
|
|
//激活插件
|
activate() {
|
|
}
|
|
//释放插件
|
disable() {
|
//toastr.info('释放插件_example_append')
|
}
|
}
|
|
//注册到widget管理器中。
|
mars3d.widget.bindClass(MyWidget)
|
|
//每个widet之间都是直接引入到index.html中,会存在彼此命名冲突,所以闭包处理下。
|
})(window, mars3d)
|