fix: сигнал не на связи переживает рестарт, самый строгий сигнал красит строку
This commit is contained in:
parent
69b483f570
commit
2757a34ed5
4 changed files with 48 additions and 24 deletions
|
|
@ -22,6 +22,7 @@ import {
|
|||
useActiveSessions, useIncidentGroups, useReviewScenarioSubmission, useScenarioSubmissions,
|
||||
useScenarios, useSessions, useTrainees,
|
||||
} from "@/shared/api/http";
|
||||
import type { Signal } from "@/shared/api/http";
|
||||
import { sessionIdFromUrl } from "@/shared/api/session";
|
||||
import type { Level, SessionMode, SessionReport } from "@/shared/types/generated";
|
||||
|
||||
|
|
@ -44,6 +45,12 @@ function modeLabel(mode: SessionMode): string {
|
|||
return MODES.find((item) => item.value === mode)?.label ?? mode;
|
||||
}
|
||||
|
||||
function worstSignalSeverity(signals: Signal[]): "warn" | "violated" | null {
|
||||
return signals.some((signal) => signal.severity === "violated")
|
||||
? "violated"
|
||||
: signals.length ? "warn" : null;
|
||||
}
|
||||
|
||||
function sessionDateLabel(value: string | null): string | null {
|
||||
if (!value) return null;
|
||||
const date = new Date(value);
|
||||
|
|
@ -383,7 +390,7 @@ export function Instructor() {
|
|||
? `Просрочено: первичная реакция ${item.dds_overdue_cards}; отработка карточки ${item.dds_work_overdue_cards}`
|
||||
: "Нормативы не нарушены"}
|
||||
</td>
|
||||
<td className={item.signals.length ? `state-${item.signals[0].severity}` : "state-ok"}>
|
||||
<td className={`state-${worstSignalSeverity(item.signals) ?? "ok"}`}>
|
||||
{item.signals.length
|
||||
? item.signals.map((signal) => <span key={signal.kind}>{signal.text}<br /></span>)
|
||||
: "Сигналов нет"}
|
||||
|
|
|
|||
Loading…
Reference in a new issue