<script language="JavaScript">
var datatable;
function initDatatable() {
datatable = $('.datatable').DataTable({
"dom": '<"toolbar">frtip',
"searching":false,
"processing": false,
"serverSide": true,
"select": true,
"ordering": true,
"language": {
"url": "${base}/assets/plugins/datatables/cn.json"
},
"preDrawCallback": function () {
sublime.showLoadingbar($(".main-content"));
},
"drawCallback": function () {
sublime.closeLoadingbar($(".main-content"));
},
"ajax": {
"url": "${base}/private/sys/task/data",
"type": "post",
"data": function (d) {
}
},
// "order": [[0, "desc"]],
"columns": [
{"data": "name", "bSortable": true},
{"data": "jobClass", "bSortable": true},
{"data": "cron", "bSortable": true},
{"data": "disabled", "bSortable": true},
{"data": "exeAt", "bSortable": true},
{"data": "exeResult", "bSortable": true}
],
"columnDefs": [
{
"render": function (data, type, row) {
if (!data) {
return '<i id="disable_' + row.id + '" class="fa fa-circle text-success ml5"></i>';
} else {
return '<i id="disable_' + row.id + '" class="fa fa-circle text-danger ml5"></i>';
}
},
"targets": 3
},
{
"render": function (data, type, row) {
if (data) {
return moment(parseInt(data*1000)).format("YYYY-MM-DD HH:mm:ss");
}
return "";
},
"targets": 4
},
{
"render": function (data, type, row) {
return '<div class="btn-group"><button type="button" class="btn btn-default btn-xs dropdown-toggle" data-toggle="dropdown">' +
' <i class="ti-settings"></i> <span class="ti-angle-down"></span></button><ul class="dropdown-menu" role="menu">' +
'<li><a href="${base}/private/sys/task/edit/' + row.id + '" data-pjax>修改</a></li>' +
'<li class="divider"></li>' +
'<li><a href="javascript:;" onclick="del(\'' + row.id + '\')">删除</a></li>' +
'<li class="divider"></li>' +
'<li><a href="javascript:;" onclick="enableTask(\'' + row.id + '\')">启用</a></li>' +
'<li><a href="javascript:;" onclick="disableTask(\'' + row.id + '\')">禁用</a></li>' +
'</ul></div>';
},
"targets": 6
}
]
});
datatable.on('click', 'tr', function () {
$(this).toggleClass('selected');
});
$("#searchBtn").on('click', function () {
datatable.ajax.reload();
});
}
function enableTask(id) {
$.post("${base}/private/sys/task/enable/" + id, {}, function (data) {
if (data.code == 0) {
$("#disable_" + id).attr("class", "fa fa-circle text-success ml5");
} else {
Toast.error(data.msg);
}
}, "json");
}
function disableTask(id) {
$.post("${base}/private/sys/task/disable/" + id, {}, function (data) {
if (data.code == 0) {
$("#disable_" + id).attr("class", "fa fa-circle text-danger ml5");
} else {
Toast.error(data.msg);
}
}, "json");
}
function del(id) {
var dialog = $("#dialogDelete");
dialog.modal("show");
dialog.find("#okDel").unbind("click");
dialog.find("#okDel").bind("click", function (event) {
var btn = $(this);
btn.button("loading");
$.post("${base}/private/sys/task/delete/" + id, {}, function (data) {
if (data.code == 0) {
datatable.ajax.reload(null,false);
} else {
Toast.error(data.msg);
}
//重置按钮状态,关闭提示框
btn.button("reset");
dialog.modal("hide");
}, "json");
});
}
function delCheck() {
var chks = datatable.rows('.selected').data();
if (chks.length > 0) {
var ids = [];
$.each(datatable.rows('.selected').data(), function (i, n) {
ids.push(n.id);
});
var dialog = $("#dialogDelete");
dialog.modal("show");
dialog.find("#okDel").unbind("click");
dialog.find("#okDel").bind("click", function (event) {
var btn = $(this);
btn.button("loading");
$.post("${base}/private/sys/task/delete", {ids: ids.toString()}, function (data) {
if (data.code == 0) {
datatable.ajax.reload(null,false);
} else {
Toast.error(data.msg);
}
btn.button("reset");
dialog.modal("hide");
}, "json");
});
} else {
Toast.warning("请先选择要删除的项!");
}
}
$(function () {
initDatatable();
});
</script>