41 lines
1.2 KiB
JavaScript
41 lines
1.2 KiB
JavaScript
layui.use(['layer'], function(){
|
||
var layer = layui.layer;
|
||
var $ = layui.$;
|
||
|
||
// 加载统计数据
|
||
function loadStats() {
|
||
fetch('/api/dashboard/stats', {
|
||
credentials: 'include'
|
||
})
|
||
.then(response => {
|
||
if (response.status === 401) {
|
||
window.location.href = '/login';
|
||
throw new Error('认证失败');
|
||
}
|
||
return response.json();
|
||
})
|
||
.then(result => {
|
||
if (result.error) {
|
||
layer.msg(result.error);
|
||
return;
|
||
}
|
||
|
||
// 更新统计数据
|
||
$('#total-devices').text(result.data.total_devices);
|
||
$('#total-licenses').text(result.data.total_licenses);
|
||
$('#today-new').text(result.data.today_new);
|
||
$('#online-devices').text(result.data.online_devices);
|
||
$('#active-devices').text(result.data.active_devices);
|
||
$('#expired-devices').text(result.data.expired_devices);
|
||
})
|
||
.catch(error => {
|
||
layer.msg('加载统计数据失败:' + error.message);
|
||
});
|
||
}
|
||
|
||
// 初始加载
|
||
loadStats();
|
||
|
||
// 定时刷新(每30秒)
|
||
setInterval(loadStats, 30000);
|
||
});
|