-- Omfördelning av tillsyner vid sjukfrånvaro
-- När en handläggare anmäler sig sjuk och har planerade tillsyner inom horisonten
-- (rest of today + nästa arbetsdag) flaggas tillsynerna för omfördelning.
--
-- omfordelning_status:
--   NULL      = inte flaggad
--   'pending' = väntar på att hanteras
--   'taken'   = övertagen av annan handläggare (handlaggare_id är uppdaterad)
--   'handled' = chef har markerat som hanterad externt (avbokad / omplanerad)
--
-- omfordelning_riktad_till:
--   'chef'    = bara chefen ser den i sin "Att hantera"-kö
--   'sektion' = även handläggare i samma sektion ser den och kan ta över
--
-- Kör i phpMyAdmin (databas: anderspe_inspektorsappen).

ALTER TABLE tillsyner
  ADD COLUMN omfordelning_status         VARCHAR(20)  NULL COMMENT 'pending | taken | handled | NULL',
  ADD COLUMN omfordelning_riktad_till    VARCHAR(20)  NULL COMMENT 'chef | sektion',
  ADD COLUMN omfordelning_efterfragad_av VARCHAR(36)  NULL COMMENT 'handlaggare.id som anmälde sig sjuk',
  ADD COLUMN omfordelning_efterfragad_at TIMESTAMP    NULL,
  ADD COLUMN omfordelning_overtagen_av   VARCHAR(36)  NULL COMMENT 'handlaggare.id som tog över / chef som hanterade',
  ADD COLUMN omfordelning_overtagen_at   TIMESTAMP    NULL;

-- Index för att snabbt hitta pending-tillsyner i cron och queue-vyer.
CREATE INDEX idx_tillsyner_omfordelning ON tillsyner (omfordelning_status, date);
