31 lines
1.2 KiB
JavaScript
31 lines
1.2 KiB
JavaScript
const typeLabels = {
|
|
device_offline: '设备离线',
|
|
authentication_failed: '认证失败',
|
|
clock_drift: '时间漂移',
|
|
reconciliation_failed: '状态对账失败',
|
|
media_shard_failed: '媒体分片异常',
|
|
control_tunnel_failed: '控制隧道异常'
|
|
}
|
|
|
|
const stateLabels = {
|
|
unacknowledged: '待确认',
|
|
acknowledged: '已确认',
|
|
recovering: '恢复观察',
|
|
recovered: '已恢复'
|
|
}
|
|
|
|
export function alertTypeLabel(value) { return typeLabels[value] || value || '未知类型' }
|
|
export function alertStateLabel(value) { return stateLabels[value] || value || '未知状态' }
|
|
export function alertStateType(value) { return ({ unacknowledged: 'danger', acknowledged: 'warning', recovering: 'primary', recovered: 'success' })[value] || 'info' }
|
|
export function canAcknowledge(item) { return item?.state === 'unacknowledged' && item?.version > 0 }
|
|
export function canRecover(item) { return item?.state === 'recovering' && item?.version > 0 }
|
|
export function buildOpsAlertQuery(query) {
|
|
return {
|
|
pageIndex: Number(query.pageIndex) || 1,
|
|
pageSize: Number(query.pageSize) || 10,
|
|
alertType: String(query.alertType || '').trim(),
|
|
state: String(query.state || '').trim(),
|
|
keyword: String(query.keyword || '').trim()
|
|
}
|
|
}
|