Dokumentationen / Modul
personal
dok · personalid: personal
namn: personal
sammanfattning: Ger chefen överblick över sin personal och en väg in i varje medarbetares personalakt och senaste utvecklingssamtal.
uppdaterad: 2026-10-05
ansvar:
- Lista enhetens medarbetare med närvaro, notiser, ärenden och nästa utvecklingssamtal – sökbart och filtrerbart.
- Visa personalakten: notiser att agera på, kopplade ärenden, anställning och kontakt.
- Visa dokumentationen från senaste utvecklingssamtalet: mål, kompetensutveckling, arbetsmiljö och överenskommelser.
- Lämna bara ut personal till chef – datafunktionen ger tomt svar för andra roller.
- Göra personalaktens notiser till notiser i klockan, och låta chefen godkänna ett signerat utvecklingssamtal.
filer:
- modules/personal/src/manifest.ts — Tre rutter med mode "standard" (ADR-019) och navposten Personal. Bara chef.
- modules/personal/src/data/types.ts — Medarbetare, Narvaro, Notis, PersonArende, Samtalsdokumentation, PersonalSvar.
- modules/personal/src/data/mock.ts — Tio fiktiva medarbetare. Knyter an till startsidans rehabärende, samtal utan tid och ärenden A-156772–A-156802.
- modules/personal/src/data/index.ts — hamtaPersonal, hamtaMedarbetare, sammanstall, godkannSamtal och personalnotiser. Lagret på globalThis, så att route handlers och sidor ser samma skrivningar.
- modules/personal/src/components/GodkannKnapp.tsx — Klientknappen som skickar godkännandet och laddar om sidan.
- modules/personal/src/components/Oversikt.tsx — Översikten: sammanfattning i fyra tal och listan.
- modules/personal/src/components/Personallista.tsx — Klientkomponent: sök, filter med aria-pressed och tabell där hela raden leder till akten.
- modules/personal/src/components/Personalakt.tsx — Personalakten, och läget "finns inte" för en okänd person.
- modules/personal/src/components/Samtal.tsx — Samtalsdokumentationen i artikelns form.
- modules/personal/src/components/format.ts — Datum, vägar (AKT, SAMTAL, OVERSIKT, KOMPETENS) och målstatus. KOMPETENS leder till personens vy i modulen kompetens – samma id, ingen import.
api:
- hamtaPersonal: (ctx: UserContext) => Promise<PersonalSvar>
Chefens personal; tomt för andra roller. Speglas av /api/mock/personal.
- hamtaMedarbetare: (ctx, id: string) => Promise<Medarbetare | undefined>
En medarbetare ur chefens personal.
- godkannSamtal: (ctx, id, nu?) => Promise<boolean>
Chefen godkänner senaste samtalets dokumentation. Falskt för fel roll, okänd person eller redan godkänt. Speglas av POST /api/mock/personal/:id/utvecklingssamtal/godkann.
- personalnotiser: (ctx) => Promise<Notification[]>
Varje notis i personalakterna som notis i klockan, med personen som meta. Manifestets notifications.
- sammanstall: (poster: Medarbetare[]) => { totalt, iTjanst, franvarande, attAgera, samtalUtanTid }
Talen överst i översikten.
kontrakt:
Rutterna:
```
/verktyg/personal översikten
/verktyg/personal/:id personalakten
/verktyg/personal/:id/utvecklingssamtal senaste samtalets dokumentation
```
- Namn, e-post och telefonnummer är påhittade. E-postdomänen är exempel.invalid, som inte kan finnas.
- Notisernas allvar följer kantlinjens färger: krit = tidsgräns, warn = väntar, info = att känna till.
- Ett samtal med signerad men utan godkand är en notis "Utvecklingssamtal att godkänna" tills chefen godkänt – notisen räknas fram, den är inte inskriven.
beroenden: module-sdk, ui, api-mock
beslut: ADR-019, ADR-020, ADR-004, ADR-006
kvarstår:
- Allt är fiktiv data. Personalsystemet nås via BFF och WSO2 i fas 4.
- Godkännanden ligger i serverns minne: de gäller för alla som tittar på demon och nollställs när servern startas om.
- Knapparna Boka, Attestera och Öppna rehabärendet leder ingenstans än.
- En okänd person ger sidan "finns inte" med status 200, inte 404 – modulen har inget sätt att säga 404 (ADR-019).
- Notiserna i akten blir inte rader i "Att agera på"; där finns i stället startsidans egna demorader.