29 lines
1.1 KiB
SQL
29 lines
1.1 KiB
SQL
-- Gør ticket contact roller fleksible
|
|
-- Fjern CHECK constraint og tillad custom roller
|
|
|
|
-- Drop den eksisterende constraint
|
|
ALTER TABLE tticket_contacts
|
|
DROP CONSTRAINT IF EXISTS tticket_contacts_role_check;
|
|
|
|
-- Tilføj index for bedre performance på rolle-søgninger
|
|
CREATE INDEX IF NOT EXISTS idx_tticket_contacts_role_lower ON tticket_contacts(LOWER(role));
|
|
|
|
-- Opdater eksisterende roller til at følge naming convention (lowercase med underscore)
|
|
UPDATE tticket_contacts SET role = LOWER(REPLACE(role, ' ', '_'));
|
|
|
|
-- Kommentar på kolonnen med eksempler
|
|
COMMENT ON COLUMN tticket_contacts.role IS 'Kontaktens rolle på ticket. Standard roller: primary, requester, assignee, cc, observer. Custom roller: ekstern_it, third_party, electrician, consultant, etc.';
|
|
|
|
-- View til at få oversigt over alle brugte roller
|
|
CREATE OR REPLACE VIEW vw_ticket_contact_roles AS
|
|
SELECT
|
|
role,
|
|
COUNT(*) as usage_count,
|
|
COUNT(DISTINCT ticket_id) as tickets_count,
|
|
MAX(added_at) as last_used
|
|
FROM tticket_contacts
|
|
GROUP BY role
|
|
ORDER BY usage_count DESC;
|
|
|
|
COMMENT ON VIEW vw_ticket_contact_roles IS 'Oversigt over alle brugte roller på tickets med statistik';
|