feat(platform): include alert escalation in digest
This commit is contained in:
@@ -341,10 +341,21 @@ function priorityIssueTicketText(row: PriorityIssueRow) {
|
||||
].join('\n');
|
||||
}
|
||||
|
||||
function priorityIssueDigestText(rows: PriorityIssueRow[], summary: QualitySummary, platformRelease?: string) {
|
||||
function priorityDigestPolicyLines(policies?: QualityNotificationPolicy[]) {
|
||||
const policy = policies?.find((item) => item.name.startsWith('P0')) ?? policies?.[0];
|
||||
if (!policy) return [];
|
||||
const escalation = formatEscalationMinutes(policy.escalationMinutes);
|
||||
return [
|
||||
`通知升级:${[policy.name, escalation, policy.target].filter(Boolean).join(' / ')}`,
|
||||
...(policy.acceptanceCriteria ? [`验收标准:${policy.acceptanceCriteria}`] : [])
|
||||
];
|
||||
}
|
||||
|
||||
function priorityIssueDigestText(rows: PriorityIssueRow[], summary: QualitySummary, platformRelease?: string, policies?: QualityNotificationPolicy[]) {
|
||||
const p0Count = rows.filter((row) => row.priority === 'P0').length;
|
||||
const p1Count = rows.filter((row) => row.priority === 'P1').length;
|
||||
const release = platformRelease?.trim();
|
||||
const policyLines = priorityDigestPolicyLines(policies);
|
||||
const lines = rows.map((row, index) => [
|
||||
`${index + 1}. [${row.priority}] ${row.vehicleLabel}`,
|
||||
` 来源:${qualityProtocolLabel(row.protocol)} / 问题:${qualityIssueLabel(row.issueType)}`,
|
||||
@@ -356,6 +367,7 @@ function priorityIssueDigestText(rows: PriorityIssueRow[], summary: QualitySumma
|
||||
`问题车辆:${summary.issueVehicleCount.toLocaleString()},问题记录:${summary.issueRecordCount.toLocaleString()}`,
|
||||
`P0:${p0Count.toLocaleString()} 条,P1:${p1Count.toLocaleString()} 条`,
|
||||
...(release ? [`运行版本:${release}`] : []),
|
||||
...policyLines,
|
||||
'',
|
||||
...lines,
|
||||
'',
|
||||
@@ -615,7 +627,7 @@ export function Quality({
|
||||
Toast.warning('当前没有可复制的优先告警');
|
||||
return;
|
||||
}
|
||||
copyText(priorityIssueDigestText(priorityRows, notificationPlan?.summary ?? summary, health?.runtime?.platformRelease), '优先队列通知汇总');
|
||||
copyText(priorityIssueDigestText(priorityRows, notificationPlan?.summary ?? summary, health?.runtime?.platformRelease, policies), '优先队列通知汇总');
|
||||
};
|
||||
|
||||
return (
|
||||
|
||||
Reference in New Issue
Block a user