-
Notifications
You must be signed in to change notification settings - Fork 20
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge branch 'master' into MODINVSTOR-1086
- Loading branch information
Showing
19 changed files
with
990 additions
and
81 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
32 changes: 32 additions & 0 deletions
32
src/main/resources/templates/db_scripts/instance-hr-item/hridTrigger.sql
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,32 @@ | ||
-- Fill in the next hrid from the sequence when the instance/holding/item | ||
-- doesn't have a hrid. | ||
CREATE OR REPLACE FUNCTION hrid_trigger() RETURNS TRIGGER | ||
AS $$ | ||
DECLARE | ||
name TEXT; | ||
hrid TEXT; | ||
prefix TEXT; | ||
zeroes BOOLEAN; | ||
BEGIN | ||
IF NEW.jsonb->'hrid' IS NOT NULL THEN | ||
RETURN NEW; | ||
END IF; | ||
name = CASE TG_TABLE_NAME | ||
WHEN 'instance' THEN 'instances' | ||
WHEN 'holdings_record' THEN 'holdings' | ||
WHEN 'item' THEN 'items' | ||
END; | ||
SELECT nextval('hrid_' || name || '_seq'), jsonb->name->>'prefix', jsonb->>'commonRetainLeadingZeroes' | ||
INTO STRICT hrid, prefix, zeroes FROM hrid_settings; | ||
IF zeroes IS TRUE THEN | ||
hrid = repeat('0', 11 - length(hrid)) || hrid; | ||
END IF; | ||
NEW.jsonb = jsonb_set(NEW.jsonb, '{hrid}', to_jsonb(concat(prefix, hrid))); | ||
RETURN NEW; | ||
END; | ||
$$ language 'plpgsql'; | ||
|
||
-- currently only the holding hrid has a trigger; instance and item hrid still use Java code | ||
|
||
DROP TRIGGER IF EXISTS hrid_holdings_record ON holdings_record CASCADE; | ||
CREATE TRIGGER hrid_holdings_record BEFORE INSERT ON holdings_record FOR EACH ROW EXECUTE FUNCTION hrid_trigger(); |
Oops, something went wrong.