Changes between Version 3 and Version 4 of Faza4


Ignore:
Timestamp:
06/11/26 13:31:04 (6 days ago)
Author:
231042
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • Faza4

    v3 v4  
    88* '''Назив:''' `trg_fn_release_cancelled_tickets()`
    99* '''Опис:''' Тригер кој се активира автоматски по бришење или откажување на резервација, враќајќи ги билетите повторно во системот како слободни и ажурирајќи го вкупниот број на достапни места.
    10 <syntaxhighlight lang="sql" line>
    11 CREATE OR REPLACE FUNCTION public.trg_fn_release_cancelled_tickets()
    12  RETURNS trigger
    13  LANGUAGE plpgsql
    14 AS $function$
     10{{{
     11CREATE OR REPLACE FUNCTION trg_fn_release_cancelled_tickets()
     12RETURNS TRIGGER AS $$
    1513BEGIN
    16     IF NEW.status = 'cancelled' AND OLD.status != 'cancelled' THEN
    17         UPDATE ticket
    18         SET status = 'available', user_id = NULL
    19         WHERE ticket_id = NEW.ticket_id;
    20     END IF;
    21     RETURN NEW;
    22 END; $function$
    23 ;
     14    -- Враќање на билетите во системот
     15    UPDATE events
     16    SET available_seats = available_seats + OLD.ticket_count
     17    WHERE event_id = OLD.event_id;
    2418
    25 </syntaxhighlight>
     19    RETURN OLD;
     20END;
     21$$ LANGUAGE plpgsql;
     22
     23CREATE TRIGGER trg_release_tickets
     24AFTER DELETE ON reservations
     25FOR EACH ROW
     26EXECUTE FUNCTION trg_fn_release_cancelled_tickets();
     27}}}
    2628
    2729== 2. Процес на купување билет (Процедура) ==