3 -- These are copy level holds
4 -- CREATE TABLE legacy_copy_hold_insert AS
5 INSERT INTO action.hold_request
6 (id, target, current_copy, hold_type, pickup_lib, selection_ou, selection_depth, request_time, capture_time, request_lib, requestor, usr)
7 SELECT lh.hold_key AS id,
10 'C'::TEXT AS hold_type,
12 pou.id AS selection_ou,
13 CASE WHEN lh.hold_range = 'SYSTEM' THEN 0
14 WHEN lh.hold_range = 'GROUP' THEN 1
16 END AS selection_depth,
17 lh.hold_date AS request_time,
18 CASE WHEN lh.available IN ('Y','I') THEN now()
21 rou.id AS request_lib,
26 ON ( jl.cat_key = lh.cat_key
27 AND jl.call_key = lh.call_key
28 AND jl.item_key = lh.item_key )
29 JOIN asset.copy cp ON (cp.barcode = jl.item_id)
30 JOIN actor.usr au ON (au.id = lh.user_key)
31 JOIN actor.org_unit rou ON (rou.shortname = lh.placing_lib)
32 JOIN actor.org_unit pou ON (pou.shortname = lh.pickup_lib)
33 WHERE lh.hold_level = 'C'
34 AND lh.hold_date > '2006-01-01';
36 -- And these are CN level holds
37 -- CREATE TABLE legacy_cn_hold_insert AS
38 INSERT INTO action.hold_request
39 (id, target, current_copy, hold_type, pickup_lib, selection_ou, selection_depth, request_time, capture_time, request_lib, requestor, usr)
40 SELECT lh.hold_key AS id,
41 cp.call_number AS target,
42 cp.id AS current_copy,
43 'V'::TEXT AS hold_type,
45 pou.id AS selection_ou,
46 CASE WHEN lh.hold_range = 'SYSTEM' THEN 0
47 WHEN lh.hold_range = 'GROUP' THEN 1
49 END AS selection_depth,
50 lh.hold_date AS request_time,
51 CASE WHEN lh.available IN ('Y','I') THEN now()
54 rou.id AS request_lib,
59 ON ( jl.cat_key = lh.cat_key
60 AND jl.call_key = lh.call_key
61 AND jl.item_key = lh.item_key )
62 JOIN asset.copy cp ON (cp.barcode = jl.item_id)
63 JOIN actor.usr au ON (au.id = lh.user_key)
64 JOIN actor.org_unit rou ON (rou.shortname = lh.placing_lib)
65 JOIN actor.org_unit pou ON (pou.shortname = lh.pickup_lib)
66 WHERE lh.hold_level = 'A'
67 AND lh.hold_date > '2006-01-01';
69 -- And these are Title level holds
70 -- CREATE TABLE legacy_title_hold_insert AS
71 INSERT INTO action.hold_request
72 (id, target, current_copy, hold_type, pickup_lib, selection_ou, selection_depth, request_time, capture_time, request_lib, requestor, usr)
73 SELECT lh.hold_key AS id,
75 cp.id AS current_copy,
76 'T'::TEXT AS hold_type,
78 pou.id AS selection_ou,
79 CASE WHEN lh.hold_range = 'SYSTEM' THEN 0
80 WHEN lh.hold_range = 'GROUP' THEN 1
82 END AS selection_depth,
83 lh.hold_date AS request_time,
84 CASE WHEN lh.available IN ('Y','I') THEN now()
87 rou.id AS request_lib,
92 ON ( jl.cat_key = lh.cat_key
93 AND jl.call_key = lh.call_key
94 AND jl.item_key = lh.item_key )
95 JOIN asset.copy cp ON (cp.barcode = jl.item_id)
96 JOIN actor.usr au ON (au.id = lh.user_key)
97 JOIN actor.org_unit rou ON (rou.shortname = lh.placing_lib)
98 JOIN actor.org_unit pou ON (pou.shortname = lh.pickup_lib)
99 WHERE lh.hold_level = 'T'
100 AND lh.hold_date > '2006-01-01';
102 SELECT SETVAL('action.hold_request_id_seq',(SELECT MAX(id) FROM action.hold_request),TRUE);