Changes between Version 7 and Version 8 of AdvancedApplicationDevelopment
- Timestamp:
- 09/25/25 13:11:27 (3 weeks ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
AdvancedApplicationDevelopment
v7 v8 25 25 26 26 1. Деактивирање дестинација со негативни рецензии 27 Ако некој внесе рецензија со оцена помала од 3, системот автоматски ја прави дестинацијата неактивна за да не се прикажува во понатамошните резултати.27 Деактивира дестинација само ако просечната оцена падне под еден праг, а не на првата ниска оцена. Всушност дестинацијата ќе се деактивира само ако навистина падне просечната оцена. 28 28 {{{ 29 CREATE OR REPLACE FUNCTION check_ negative_review()29 CREATE OR REPLACE FUNCTION check_avg_rating() 30 30 RETURNS TRIGGER AS $$ 31 DECLARE 32 avg_rating FLOAT; 31 33 BEGIN 32 IF NEW.ocenka < 3 THEN 33 UPDATE destinacii 34 SET aktivna = FALSE 35 WHERE iddest = NEW.iddest; 36 END IF; 37 RETURN NEW; 34 SELECT AVG(ocenka) INTO avg_rating 35 FROM recenzii 36 WHERE iddest = NEW.iddest; 37 38 IF avg_rating < 4 THEN 39 UPDATE destinacii 40 SET aktivna = FALSE 41 WHERE iddest = NEW.iddest; 42 END IF; 43 44 RETURN NEW; 38 45 END; 39 46 $$ LANGUAGE plpgsql; 40 47 41 CREATE TRIGGER trg_ negative_review48 CREATE TRIGGER trg_avg_rating 42 49 AFTER INSERT ON recenzii 43 FOR EACH ROW EXECUTE FUNCTION check_negative_review(); 50 FOR EACH ROW 51 EXECUTE FUNCTION check_avg_rating(); 44 52 }}} 45 53