new verion of circ policies map table
[migration-tools.git] / mig-sql / init / 020_common_tables.sql
1 CREATE TABLE map_hold_policies (
2     l_org_unit            TEXT
3     ,l_user_group         TEXT
4     ,l_circ_mod           TEXT
5     ,l_holdable           TEXT
6     ,l_max_holds          TEXT
7     ,l_include_frozen     TEXT
8     ,l_transit_range      TEXT
9     ,l_range_from         TEXT
10     ,l_notes              TEXT
11     ,x_org_unit           INTEGER
12     ,x_grp_id             INTEGER
13     ,x_migrate            BOOLEAN DEFAULT TRUE
14 );
15
16 INSERT INTO gsheet_tracked_table 
17     (table_name,tab_name,created)
18 VALUES
19     ('map_hold_policies','Hold Policies',NOW())
20 ;
21
22 INSERT INTO gsheet_tracked_column
23     (table_id,column_name)
24 VALUES
25      ((SELECT id FROM gsheet_tracked_table WHERE tab_name = 'Hold Policies'),'l_org_unit')
26     ,((SELECT id FROM gsheet_tracked_table WHERE tab_name = 'Hold Policies'),'l_user_group')
27     ,((SELECT id FROM gsheet_tracked_table WHERE tab_name = 'Hold Policies'),'l_circ_mod')
28     ,((SELECT id FROM gsheet_tracked_table WHERE tab_name = 'Hold Policies'),'l_holdable')
29     ,((SELECT id FROM gsheet_tracked_table WHERE tab_name = 'Hold Policies'),'l_max_holds')
30     ,((SELECT id FROM gsheet_tracked_table WHERE tab_name = 'Hold Policies'),'l_include_frozen')
31     ,((SELECT id FROM gsheet_tracked_table WHERE tab_name = 'Hold Policies'),'l_transit_range')
32     ,((SELECT id FROM gsheet_tracked_table WHERE tab_name = 'Hold Policies'),'l_range_from')
33     ,((SELECT id FROM gsheet_tracked_table WHERE tab_name = 'Hold Policies'),'l_notes')
34 ;
35
36  CREATE TABLE map_hold_combo_policies (
37     l_user_home_lib         TEXT
38     ,l_request_lib          TEXT
39     ,l_owning_lib           TEXT
40     ,l_item_circ_lib        TEXT
41     ,l_request_user_group   TEXT
42     ,l_circ_mod             TEXT
43     ,l_active               TEXT
44     ,l_holdable             TEXT
45     ,l_max_holds            TEXT
46     ,l_max_includes_frozen  TEXT
47     ,l_range_from           TEXT
48     ,l_transit_range        TEXT
49     ,l_user_group           TEXT
50     ,l_notes                TEXT
51     ,x_user_home_lib        INTEGER
52     ,x_request_lib          INTEGER
53     ,x_owning_lib           INTEGER
54     ,x_item_circ_lib        INTEGER
55     ,x_request_user_group   INTEGER
56     ,x_circ_mod             TEXT
57     ,x_active               BOOLEAN DEFAULT TRUE
58     ,x_holdable             BOOLEAN DEFAULT TRUE
59     ,x_max_holds            INTEGER
60     ,x_max_includes_frozen  BOOLEAN DEFAULT FALSE
61     ,x_range_from           BOOLEAN DEFAULT TRUE
62     ,x_transit_range        INTEGER
63     ,x_user_group           INTEGER
64     ,x_migrate              BOOLEAN DEFAULT TRUE
65 );
66
67 INSERT INTO gsheet_tracked_table
68     (table_name,tab_name,created)
69 VALUES
70     ('map_hold_combo_policies','Hold Combos',NOW())
71 ;
72
73 INSERT INTO gsheet_tracked_column
74     (table_id,column_name)
75 VALUES
76      ((SELECT id FROM gsheet_tracked_table WHERE tab_name = 'Hold Combos'),'l_user_home_lib')
77     ,((SELECT id FROM gsheet_tracked_table WHERE tab_name = 'Hold Combos'),'l_request_lib')
78     ,((SELECT id FROM gsheet_tracked_table WHERE tab_name = 'Hold Combos'),'l_owning_lib')
79     ,((SELECT id FROM gsheet_tracked_table WHERE tab_name = 'Hold Combos'),'l_item_circ_lib')
80     ,((SELECT id FROM gsheet_tracked_table WHERE tab_name = 'Hold Combos'),'l_request_user_group')
81     ,((SELECT id FROM gsheet_tracked_table WHERE tab_name = 'Hold Combos'),'l_circ_mod')
82     ,((SELECT id FROM gsheet_tracked_table WHERE tab_name = 'Hold Combos'),'l_active')
83     ,((SELECT id FROM gsheet_tracked_table WHERE tab_name = 'Hold Combos'),'l_holdable')
84     ,((SELECT id FROM gsheet_tracked_table WHERE tab_name = 'Hold Combos'),'l_max_holds')
85     ,((SELECT id FROM gsheet_tracked_table WHERE tab_name = 'Hold Combos'),'l_max_includes_frozen')
86     ,((SELECT id FROM gsheet_tracked_table WHERE tab_name = 'Hold Combos'),'l_range_from')
87     ,((SELECT id FROM gsheet_tracked_table WHERE tab_name = 'Hold Combos'),'l_transit_range')
88     ,((SELECT id FROM gsheet_tracked_table WHERE tab_name = 'Hold Combos'),'l_user_group')
89     ,((SELECT id FROM gsheet_tracked_table WHERE tab_name = 'Hold Combos'),'l_notes')
90 ;
91
92 CREATE TABLE map_circ_policies (
93     l_org_unit              TEXT
94     ,l_user_group           TEXT
95     ,l_copy_owning_lib      TEXT
96     ,l_user_home_lib        TEXT
97     ,l_circ_mod             TEXT
98     ,l_copy_location        TEXT
99     ,l_circulate            TEXT
100     ,l_circ_limit_set       TEXT
101     ,l_duration_rule        TEXT
102     ,l_fine_rule            TEXT
103     ,l_grace_override       TEXT
104     ,l_max_fine             TEXT
105     ,l_notes                TEXT
106     ,x_org_unit             INTEGER
107     ,x_grp_id               INTEGER
108     ,x_copy_location        INTEGER
109     ,x_circ_limit           INTEGER
110     ,x_duration             INTEGER
111     ,x_max_fine             INTEGER
112     ,x_fine_interval        INTEGER
113     ,x_migrate              BOOLEAN DEFAULT FALSE
114 );
115
116 INSERT INTO gsheet_tracked_table
117     (table_name,tab_name,created)
118 VALUES
119     ('map_circ_policies','Circ Policies',NOW())
120 ;
121
122 INSERT INTO gsheet_tracked_column
123     (table_id,column_name)
124 VALUES
125      ((SELECT id FROM gsheet_tracked_table WHERE tab_name = 'Circ Policies'),'l_org_unit')
126     ,((SELECT id FROM gsheet_tracked_table WHERE tab_name = 'Circ Policies'),'l_user_group')
127     ,((SELECT id FROM gsheet_tracked_table WHERE tab_name = 'Circ Policies'),'l_copy_owning')
128     ,((SELECT id FROM gsheet_tracked_table WHERE tab_name = 'Circ Policies'),'l_user_home_lib')
129     ,((SELECT id FROM gsheet_tracked_table WHERE tab_name = 'Circ Policies'),'l_circ_mod')
130     ,((SELECT id FROM gsheet_tracked_table WHERE tab_name = 'Circ Policies'),'l_copy_location')
131     ,((SELECT id FROM gsheet_tracked_table WHERE tab_name = 'Circ Policies'),'l_circulate')
132     ,((SELECT id FROM gsheet_tracked_table WHERE tab_name = 'Circ Policies'),'l_circ_limit_set')
133     ,((SELECT id FROM gsheet_tracked_table WHERE tab_name = 'Circ Policies'),'l_duration_rule')
134     ,((SELECT id FROM gsheet_tracked_table WHERE tab_name = 'Circ Policies'),'l_fine_rule')
135     ,((SELECT id FROM gsheet_tracked_table WHERE tab_name = 'Circ Policies'),'l_grace_override')
136     ,((SELECT id FROM gsheet_tracked_table WHERE tab_name = 'Circ Policies'),'l_max_fine')
137     ,((SELECT id FROM gsheet_tracked_table WHERE tab_name = 'Circ Policies'),'l_notes')
138 ;
139
140 CREATE TABLE map_create_shelving_location (
141     l_id                  SERIAL
142     ,l_owning_lib         TEXT            
143     ,l_copy_location      TEXT
144     ,l_opac_visible       TEXT
145     ,l_checkin_alert      TEXT
146     ,l_holdable           TEXT
147     ,l_circulate          TEXT
148     ,l_note               TEXT
149     ,x_migrate            BOOLEAN NOT NULL DEFAULT TRUE
150     ,x_shelf              INTEGER
151 ) INHERITS (asset_copy_location);
152
153 INSERT INTO gsheet_tracked_table 
154     (table_name,tab_name,created)
155 VALUES 
156     ('map_create_shelving_location','New Copy Locations',NOW())
157 ;
158
159 INSERT INTO gsheet_tracked_column 
160     (table_id,column_name) 
161 VALUES 
162      ((SELECT id FROM gsheet_tracked_table WHERE tab_name = 'New Copy Locations'),'l_owning_lib')
163     ,((SELECT id FROM gsheet_tracked_table WHERE tab_name = 'New Copy Locations'),'l_copy_location')
164     ,((SELECT id FROM gsheet_tracked_table WHERE tab_name = 'New Copy Locations'),'l_opac_visible')
165     ,((SELECT id FROM gsheet_tracked_table WHERE tab_name = 'New Copy Locations'),'l_checkin_alert')
166     ,((SELECT id FROM gsheet_tracked_table WHERE tab_name = 'New Copy Locations'),'l_holdable')
167     ,((SELECT id FROM gsheet_tracked_table WHERE tab_name = 'New Copy Locations'),'l_circulate')
168     ,((SELECT id FROM gsheet_tracked_table WHERE tab_name = 'New Copy Locations'),'l_note')
169 ;
170
171 CREATE TABLE map_create_account (
172     l_id                  SERIAL
173     ,l_usrname            TEXT            
174     ,l_first_name         TEXT
175     ,l_family_name        TEXT
176     ,l_email              TEXT
177     ,l_password           TEXT
178     ,l_home_library       TEXT
179     ,l_profile1           TEXT
180     ,l_profile2           TEXT
181     ,l_profile3           TEXT
182     ,l_work_ou            TEXT
183     ,l_note               TEXT
184     ,l_note2              TEXT
185     ,x_migrate            BOOLEAN NOT NULL DEFAULT TRUE
186 ) INHERITS (actor_usr);
187
188 INSERT INTO gsheet_tracked_table 
189     (table_name,tab_name,created)
190 VALUES 
191     ('map_create_account','New Accounts',NOW())
192 ;
193
194 INSERT INTO gsheet_tracked_column 
195     (table_id,column_name) 
196 VALUES 
197      ((SELECT id FROM gsheet_tracked_table WHERE tab_name = 'New Accounts'),'l_usrname')
198     ,((SELECT id FROM gsheet_tracked_table WHERE tab_name = 'New Accounts'),'l_first_name')
199     ,((SELECT id FROM gsheet_tracked_table WHERE tab_name = 'New Accounts'),'l_family_name')
200     ,((SELECT id FROM gsheet_tracked_table WHERE tab_name = 'New Accounts'),'l_email')
201     ,((SELECT id FROM gsheet_tracked_table WHERE tab_name = 'New Accounts'),'l_password')
202     ,((SELECT id FROM gsheet_tracked_table WHERE tab_name = 'New Accounts'),'l_home_library')
203     ,((SELECT id FROM gsheet_tracked_table WHERE tab_name = 'New Accounts'),'l_profile1')
204     ,((SELECT id FROM gsheet_tracked_table WHERE tab_name = 'New Accounts'),'l_profile2')
205     ,((SELECT id FROM gsheet_tracked_table WHERE tab_name = 'New Accounts'),'l_profile3')
206     ,((SELECT id FROM gsheet_tracked_table WHERE tab_name = 'New Accounts'),'l_work_ou')
207     ,((SELECT id FROM gsheet_tracked_table WHERE tab_name = 'New Accounts'),'l_note')
208     ,((SELECT id FROM gsheet_tracked_table WHERE tab_name = 'New Accounts'),'l_note2')
209 ;
210
211
212 CREATE TABLE map_threshold (
213     id                  SERIAL
214     ,profile            TEXT            
215     ,checkout_threshold TEXT
216     ,fine_threshold     TEXT
217     ,overdue_threshold  TEXT
218     ,note               TEXT
219 );
220
221 INSERT INTO gsheet_tracked_table 
222     (table_name,tab_name,created)
223 VALUES 
224     ('map_threshold','Patron Thresholds',NOW())
225 ;
226
227 INSERT INTO gsheet_tracked_column 
228     (table_id,column_name) 
229 VALUES 
230      ((SELECT id FROM gsheet_tracked_table WHERE tab_name = 'Patron Thresholds'),'profile')
231     ,((SELECT id FROM gsheet_tracked_table WHERE tab_name = 'Patron Thresholds'),'checkout_threshold')
232     ,((SELECT id FROM gsheet_tracked_table WHERE tab_name = 'Patron Thresholds'),'fine_threshold')
233     ,((SELECT id FROM gsheet_tracked_table WHERE tab_name = 'Patron Thresholds'),'overdue_threshold')
234     ,((SELECT id FROM gsheet_tracked_table WHERE tab_name = 'Patron Thresholds'),'note')
235 ;
236
237
238 CREATE TABLE map_misc (
239     id             SERIAL
240     ,count       TEXT            
241     ,option        TEXT
242     ,choice        TEXT
243     ,value         TEXT
244     ,note          TEXT
245 );
246
247 INSERT INTO gsheet_tracked_table 
248     (table_name,tab_name,created)
249 VALUES 
250     ('map_misc','Miscellaneous Options',NOW())
251 ;
252
253 INSERT INTO gsheet_tracked_column 
254     (table_id,column_name) 
255 VALUES 
256      ((SELECT id FROM gsheet_tracked_table WHERE tab_name = 'Miscellaneous Options'),'count')
257     ,((SELECT id FROM gsheet_tracked_table WHERE tab_name = 'Miscellaneous Options'),'option')
258     ,((SELECT id FROM gsheet_tracked_table WHERE tab_name = 'Miscellaneous Options'),'Choice')
259     ,((SELECT id FROM gsheet_tracked_table WHERE tab_name = 'Miscellaneous Options'),'value')
260     ,((SELECT id FROM gsheet_tracked_table WHERE tab_name = 'Miscellaneous Options'),'note')
261 ;
262
263 CREATE TABLE map_org_setting (
264     l_id             SERIAL
265     ,l_name          TEXT            
266     ,l_label         TEXT
267     ,l_entry_type    TEXT
268     ,l_org_unit      TEXT
269     ,l_value         TEXT
270     ,l_note          TEXT
271 );
272
273 INSERT INTO gsheet_tracked_table 
274     (table_name,tab_name,created)
275 VALUES 
276     ('map_org_setting','Org Settings',NOW())
277 ;
278
279 INSERT INTO gsheet_tracked_column 
280     (table_id,column_name) 
281 VALUES 
282      ((SELECT id FROM gsheet_tracked_table WHERE tab_name = 'Org Settings'),'l_name')
283     ,((SELECT id FROM gsheet_tracked_table WHERE tab_name = 'Org Settings'),'l_label')
284     ,((SELECT id FROM gsheet_tracked_table WHERE tab_name = 'Org Settings'),'l_entry_type')
285     ,((SELECT id FROM gsheet_tracked_table WHERE tab_name = 'Org Settings'),'l_org_unit')
286     ,((SELECT id FROM gsheet_tracked_table WHERE tab_name = 'Org Settings'),'l_value')
287     ,((SELECT id FROM gsheet_tracked_table WHERE tab_name = 'Org Settings'),'l_note')
288 ;
289
290
291 CREATE TABLE map_bib_manipulations (
292     id               SERIAL
293     ,action          TEXT
294     ,field           TEXT
295     ,subfield        TEXT
296     ,matching_value  TEXT
297     ,target_value    TEXT
298     ,note            TEXT
299 );
300
301 INSERT INTO gsheet_tracked_table
302     (table_name,tab_name,created)
303 VALUES
304     ('map_bib_manipulations','Bib Records',NOW())
305 ;
306
307 INSERT INTO gsheet_tracked_column
308     (table_id,column_name)
309 VALUES
310      ((SELECT id FROM gsheet_tracked_table WHERE tab_name = 'Bib Records'),'name')
311     ,((SELECT id FROM gsheet_tracked_table WHERE tab_name = 'Bib Records'),'action')
312     ,((SELECT id FROM gsheet_tracked_table WHERE tab_name = 'Bib Records'),'field')
313     ,((SELECT id FROM gsheet_tracked_table WHERE tab_name = 'Bib Records'),'subfield')
314     ,((SELECT id FROM gsheet_tracked_table WHERE tab_name = 'Bib Records'),'matching_value')
315     ,((SELECT id FROM gsheet_tracked_table WHERE tab_name = 'Bib Records'),'target_value')
316     ,((SELECT id FROM gsheet_tracked_table WHERE tab_name = 'Bib Records'),'note')
317 ;
318
319