Support — prosessflyt¶
Support-modulen leser supportsaker fra Freshdesk inn i en lokal buffer, som forsidewidgeten og sakslisten alltid leser fra. Synkronisering skjer aldri automatisk i bakgrunnen — den utløses av en utdatert visning eller et manuelt trykk på Oppdater. Fra en sak kan en oppgave opprettes i ePortal, med en fast, permanent kobling som hindrer at samme sak blir til flere oppgaver.
flowchart LR
fd["Freshdesk<br/>(ekstern kilde)"] -->|"delta-synk<br/>(updated_since)"| cache["Lokal buffer<br/>wv_Freshdesk_TicketCache"]
cache --> widget["Forsidewidget"]
cache --> grid["Saksliste<br/>/support/freshdesk"]
widget --> qc["Hurtigregistrering<br/>(forhåndsutfylt)"]
grid --> qc
qc --> task["Oppgave i ePortal<br/>(prosjekt- eller CRM-oppgave)"]
task -->|"kobles permanent via"| link["wv_Project_ExternalSync<br/>(én rad per sak)"]
link -.->|"forhindrer duplikat"| qc
Hva diagrammet viser¶
| Steg | Forklaring |
|---|---|
| Freshdesk → Lokal buffer | POST api/freshdeskticket/refresh kjører en delta-synkronisering synkront (aldri en bakgrunnsjobb) og fyller wv_Freshdesk_TicketCache. Utløses av frontenden når en visning er utdatert, eller manuelt via Oppdater-knappen. |
| Lokal buffer → Widget / Saksliste | Både forsidewidgeten og sakslisten leser kun fra bufferen (api/freshdeskticket/list og /widget) — de venter aldri på et Freshdesk-kall for å vise siden. |
| Widget / Saksliste → Hurtigregistrering | «Opprett oppgave» åpner Hurtigregistrering forhåndsutfylt med tittel, beskrivelse og saksreferanse. |
| Hurtigregistrering → Oppgave | Brukeren fullfører og lagrer oppgaven som normalt (prosjekt- eller CRM-oppgave). |
| Oppgave → dedup-kobling | Én kanonisk rad i wv_Project_ExternalSync (filtrert unik indeks på Freshdesk-saksnummer) kobler saken til nøyaktig én oppgave. Et nytt forsøk på å opprette oppgave fra samme sak blokkeres og viser i stedet den eksisterende oppgaven. |
Avgrensning¶
- Én-veis lesing (Freshdesk → ePortal). Ingen statusoppdatering skrives tilbake til Freshdesk i denne versjonen.
- Ingen planlagt bakgrunnsjobb synkroniserer automatisk — synkronisering er alltid utløst av en side-visning eller et manuelt trykk.
- Saksbeskrivelsen vises som ren tekst — HTML fra Freshdesk rendres aldri direkte.