bmc_hub/docs/sag-v5-kommandoer.md

57 lines
3.5 KiB
Markdown
Raw Permalink Normal View History

# Kommandoer i Sag V5
Status: implementeret lokalt. Migration 1058 er anvendt på den lokale database. Ikke udrullet til produktion.
Skriv kommandoer på egne linjer i kommentarfeltet. Almindelig tekst gemmes som intern kommentar ved kommandogemning; kommandolinjerne gemmes som handlinger. Forhåndsvisningen viser medarbejdere, tidsregistrering, afregning og undersager inden gemning. Klik på en brik for at rette linjen. Kommandoer og valgte plusmenuhandlinger må ikke blandes i samme gemning.
```text
Undersøgt AI-funktioner.
/tid 30m research "Undersøgt AI-funktioner"
/tildel ct "Bestil varer"
/undersag "Router opsætning"
//tildel mkk "Opsæt router"
//forventet 30m
//todo "Tag backup af gammel konfiguration"
```
En `/` gælder hovedsagen. `//` gælder den nærmeste tidligere `/undersag`. Flere undersager kan oprettes i én gemning. Initialer skal identificere én aktiv medarbejder; fulde navne kan angives i anførselstegn.
| Kommando | Eksempel |
| --- | --- |
| Tid | `/tid 30m research "Undersøgt AI-funktioner"` |
| Tildeling med begrundelse | `/tildel "Christian Thomas" "Bestil varer"` |
| Tildel dig selv | `/mig` |
| Gruppe | `/gruppe "Teknisk support" "Kræver fejlsøgning"` |
| Forventet tid | `/forventet 30m` |
| Undersag | `/undersag "Router opsætning"` |
| Todo | `/todo "Bestil router" @ct fredag` |
| Afventer kunde med todo | `/afventer kunde "Mangler adgang"` |
| Løsning | `/løsning "Opdatering løste fejlen"` |
| Deadline | `/deadline fredag` |
| Udsat | `/udsat i morgen` |
| Prioritet | `/prioritet høj "Kunden er uden internet"` |
| Relation | `/relation #1248` |
| Intern note | `/note "Afventer pris"` |
| Mailkladde | `/mail "Vi har bestilt routeren"` |
| Timer | `/timer start "Routeropsætning"` eller `/timer pause` |
| Filer | `/fil` |
| Hjælp | `/hjælp` |
Tid accepterer hele minutter, `30m`, `1h` og `1,5h`. Afregning vælges på brikken, med Kladde som standard. Drift og Udvikling kræver chefkontrol. Faktura viser timeprisen, og aktive klippekort/fastpris vises efter kundens muligheder. Gemning forbruger ikke klip eller fakturerer direkte.
Datoer accepterer ISO-dato, i dag, i morgen og danske ugedage. Ugedagen er næste forekomst inklusive i dag. Udsat må ikke være efter deadline; hele batchens sluttilstand kontrolleres.
Mail gemmes som kladde og findes i “Mine gemte mailkladder”. Åbning bruger den eksisterende mailformular; afsendelse kræver dens særskilte send-knap. Mail på en undersag åbnes på undersagen. `/fil` viser en særskilt filvælgerknap: den bruger eksisterende upload med det samme og indgår ikke i batchtransaktionen.
Hvis sagen allerede har en løsning, afvises `/løsning`; den eksisterende løsning skal redigeres via Løsning-fanen. Timerstart afvises ved en allerede aktiv timer. Pause gælder kun brugerens aktive timer på den valgte sag.
Gemning af kommandoer sker atomisk i én databasetransaktion. UUID og payloadhash sikrer, at et gentaget klik eller genforsøg ikke gentager handlingerne. Ved usikkert netværkssvar beholdes nøjagtigt payload og UUID; sikre afvisninger låser redigeringen op. Kladden gemmes i browserens session pr. verificeret bruger og sag.
## Lokal kontrol
- 15 fokuserede backendtests, 8 parsertests og 3 UI-tests bestået.
- Eksisterende sag-, darkmode- og afregningstests bestået.
- Databaseprøve med 18 handlinger og identisk genkørsel bestået; alle testændringer rullet tilbage.
- Browserkontrol af kommandoforslag og forhåndsvisning mod den lokale API uden gemning.
- Ingen eksterne mail- eller økonomiwrites under test.