]> git.evergreen-ils.org Git - Evergreen.git/blob - Open-ILS/src/sql/Pg/upgrade/0047.schema.claims-never-checkout-trigger.sql
LP1889113 Staff catalog record holds sticky org select
[Evergreen.git] / Open-ILS / src / sql / Pg / upgrade / 0047.schema.claims-never-checkout-trigger.sql
1 BEGIN;
2
3 INSERT INTO config.upgrade_log (version) VALUES ('0047');
4
5 CREATE OR REPLACE FUNCTION action.circulation_claims_returned () RETURNS TRIGGER AS $$
6 BEGIN
7         IF OLD.stop_fines IS NULL OR OLD.stop_fines <> NEW.stop_fines THEN
8                 IF NEW.stop_fines = 'CLAIMSRETURNED' THEN
9                         UPDATE actor.usr SET claims_returned_count = claims_returned_count + 1 WHERE id = NEW.usr;
10                 END IF;
11                 IF NEW.stop_fines = 'CLAIMSNEVERCHECKEDOUT' THEN
12                         UPDATE actor.usr SET claims_never_checked_out_count = claims_never_checked_out_count + 1 WHERE id = NEW.usr;
13                 END IF;
14                 IF NEW.stop_fines = 'LOST' THEN
15                         UPDATE asset.copy SET status = 3 WHERE id = NEW.target_copy;
16                 END IF;
17         END IF;
18         RETURN NEW;
19 END;
20 $$ LANGUAGE 'plpgsql';
21
22 COMMIT;
23