✔ {k.text}
+🔄 {pagaende}
} + {!avslutat && pagaende &&⏳ {e}
+Systemet läser av mätarställningen …
} @@ -320,6 +323,79 @@ function MatarstallningSteg({ lage, skicka }: { lage: "ingaende" | "utgaende"; s ); } +// Fordonshistorik i pre-diagnostiken: tidigare ärenden på samma objekt +// hämtas automatiskt (plattformen i inloggat läge, lokala storen annars) +// med deras dokumenterade felorsaker. Teknikern kan koppla orsakskedjan +// till det aktuella ärendet med ett tryck. +function TidigareArenden({ arende, skicka }: { arende: Arende; skicka: (h: Handelse) => void }) { + const arenden = useFelsokning((s) => s.arenden); + const o = objekt(arende); + const [rader, setRader] = useState+ Tidigare ärenden på {identifierare} — granska innan historiken kvitteras +
+ {rader.map((rad) => ( ++ Ärende #{rad.nummer} · {tidDatum(rad.skapad)} ·{" "} + {rad.avslutat ? "avslutat" : "pågående"} + {rad.felbeskrivning && — ”{rad.felbeskrivning}”} +
+ {rad.felorsaker.map((f, i) => ( ++ Felorsak: {f.avvikelse} ({f.orsaker.join(", ")}) +
+ ))} + +
- {r.klar ? "✅" : "☐"} {r.rubrik}
- {r.varning && ⚠ {r.varning}}
+ {r.klar ?
Har fordonets historik kontrollerats? (tidigare arbeten, återkommande fel, TSB, kampanjer)
+Denna kontroll verifieras med foto.
> ) : ( @@ -1134,7 +1211,7 @@ const DOKTYPER = [ { id: "observation", label: "Observation" }, { id: "matvarde", label: "Mätvärde" }, { id: "foto", label: "Foto" }, - { id: "instrument", label: "📷 Instrument" }, + { id: "instrument", label: "Instrument" }, { id: "hypotes", label: "Hypotes" }, { id: "kommentar", label: "Kommentar" }, ] as const; @@ -1305,7 +1382,7 @@ function SnabbDokumentation({
- 🔴 En hypotes är en möjlig felorsak som kräver verifiering — den loggas aldrig som ett konstaterat fel.
+
Systemet sammanfattar …
} @@ -1439,7 +1516,7 @@ function DelningsHanterare({ arende, skicka }: { arende: Arende; skicka: (h: Han uppdatera(); }} > - 🔗 Delningslänkar (kund/partner/intern) +
- ⚠ {k.text} — underlag saknas: {k.undantag}
+
@@ -1724,7 +1801,7 @@ function RapportFlik({
- {rad.ok ? "✅" : rad.kravs ? "❌" : "⚠️"}
+ {rad.ok ?
- Rapporten kan inte genereras förrän varje ❌ har evidens eller ett dokumenterat undantag + Rapporten kan inte genereras förrän varje underkänd rad har evidens eller ett dokumenterat undantag (”Underlag kan inte tas fram” i guiden).
)} @@ -1753,7 +1830,7 @@ function RapportFlik({Tolkar dokumentet …
) : ( -{skanningsFel}
} @@ -273,9 +274,9 @@ export default function NyttArende() { // Visuell granskning: den skannade arbetsordern till vänster, tolkade // fält till höger. Konfidensen styr vad teknikern behöver göra: -// 🟢 ≥ 95 % godkänns automatiskt -// 🟡 80–95 % markerad för genomläsning -// 🔴 < 80 % kräver aktiv bekräftelse (eller redigering) +// Grön ≥ 95 % godkänns automatiskt +// Gul 80–95 % markerad för genomläsning +// Röd < 80 % kräver aktiv bekräftelse (eller redigering) // Klick på ett fält markerar var i dokumentet värdet hittades. function GranskaTolkning({ foto, diff --git a/src/pages/felsokning/Oversikt.tsx b/src/pages/felsokning/Oversikt.tsx index 6fa51c7..90626c9 100644 --- a/src/pages/felsokning/Oversikt.tsx +++ b/src/pages/felsokning/Oversikt.tsx @@ -8,6 +8,7 @@ import { useNavigate } from "react-router-dom"; import type { Arende } from "@/felsokning/domain"; import { hamtaAnvandare, + hamtaFelorsaksstatistik, hamtaOversikt, plattformAktiv, plattformFetch, @@ -82,6 +83,7 @@ export default function Oversikt() { const navigate = useNavigate(); const { arenden, laggInArende, sammanfoga } = useFelsokning(); const [rader, setRader] = useState+ Ur dokumenterade felorsaksanalyser — visar mönster som slitage, tidigare reparationer eller möjliga konstruktionsproblem. +
+Inga ärenden i organisationen ännu.
} {rader.map((rad) => (