|
|
@ -484,6 +484,10 @@ |
|
|
|
return; |
|
|
|
} |
|
|
|
if (!confirm('确定要启动该网络吗?')) return; |
|
|
|
|
|
|
|
// 显示等待状态 |
|
|
|
row.find('td').eq(6).html('<span class="status-dot status-idle"></span><span class="status-text">等待中...</span>'); |
|
|
|
|
|
|
|
$.ajax({ |
|
|
|
url: '/api/ipgroup/start', |
|
|
|
type: 'POST', |
|
|
@ -502,9 +506,12 @@ |
|
|
|
console.log('解析响应数据失败:', e); |
|
|
|
} |
|
|
|
} |
|
|
|
loadAllNetworkConfigs(); |
|
|
|
// 保持当前选择的key,只更新apn/band/comment信息 |
|
|
|
updateNetworkInfo(ip, port, key); |
|
|
|
}, |
|
|
|
error: function(xhr) { |
|
|
|
// 恢复原状态 |
|
|
|
row.find('td').eq(6).html('<span class="status-dot status-stopped"></span><span class="status-text">停止</span>'); |
|
|
|
var errorMsg = '启动失败'; |
|
|
|
try { |
|
|
|
var errorResponse = JSON.parse(xhr.responseText); |
|
|
@ -528,6 +535,10 @@ |
|
|
|
return; |
|
|
|
} |
|
|
|
if (!confirm('确定要停止该网络吗?')) return; |
|
|
|
|
|
|
|
// 显示等待状态 |
|
|
|
row.find('td').eq(6).html('<span class="status-dot status-idle"></span><span class="status-text">等待中...</span>'); |
|
|
|
|
|
|
|
$.ajax({ |
|
|
|
url: '/api/ipgroup/stop', |
|
|
|
type: 'POST', |
|
|
@ -546,9 +557,12 @@ |
|
|
|
console.log('解析响应数据失败:', e); |
|
|
|
} |
|
|
|
} |
|
|
|
loadAllNetworkConfigs(); |
|
|
|
// 保持当前选择的key,只更新apn/band/comment信息 |
|
|
|
updateNetworkInfo(ip, port, key); |
|
|
|
}, |
|
|
|
error: function(xhr) { |
|
|
|
// 恢复原状态 |
|
|
|
row.find('td').eq(6).html('<span class="status-dot status-running"></span><span class="status-text">运行</span>'); |
|
|
|
var errorMsg = '停止失败'; |
|
|
|
try { |
|
|
|
var errorResponse = JSON.parse(xhr.responseText); |
|
|
@ -561,6 +575,23 @@ |
|
|
|
}); |
|
|
|
} |
|
|
|
|
|
|
|
function updateNetworkInfo(ip, port, key) { |
|
|
|
// 只更新指定IP的apn/band/comment信息,不重新加载下拉框 |
|
|
|
$.ajax({ |
|
|
|
url: '/api/ipgroup/network-config', |
|
|
|
type: 'GET', |
|
|
|
data: { ip: ip, port: port }, |
|
|
|
success: function(res) { |
|
|
|
if (res.isSuccess && res.data) { |
|
|
|
const cfg = res.data.find(x => x.configKey === key); |
|
|
|
$('.apn-cell[data-ip="' + ip + '"]').text(cfg ? (cfg.apn || '') : ''); |
|
|
|
$('.band-cell[data-ip="' + ip + '"]').text(cfg && cfg.band ? cfg.band.join(',') : ''); |
|
|
|
$('.comment-cell[data-ip="' + ip + '"]').text(cfg ? (cfg.comment || '') : ''); |
|
|
|
} |
|
|
|
} |
|
|
|
}); |
|
|
|
} |
|
|
|
|
|
|
|
function showToast(message, type) { |
|
|
|
// 简单的提示函数,可以替换为更美观的toast组件 |
|
|
|
var alertClass = type === 'success' ? 'alert-success' : 'alert-danger'; |
|
|
|