updates to support corner cases in circ
[Evergreen.git] / Open-ILS / src / perlmods / OpenILS / Application / Storage / CDBI / action.pm
1 package OpenILS::Application::Storage::CDBI::action;
2 our $VERSION = 1;
3
4 #-------------------------------------------------------------------------------
5 package action;
6 use base qw/OpenILS::Application::Storage::CDBI/;
7 #-------------------------------------------------------------------------------
8
9 package action::in_house_use;
10 use base qw/action/;
11 __PACKAGE__->table('action_in_house_use');
12 __PACKAGE__->columns(Primary => 'id');
13 __PACKAGE__->columns(Essential => qw/item staff org_unit use_time/);
14 #-------------------------------------------------------------------------------
15
16 package action::non_cataloged_circulation;
17 use base qw/action/;
18 __PACKAGE__->table('action_non_cataloged_circulation');
19 __PACKAGE__->columns(Primary => 'id');
20 __PACKAGE__->columns(Essential => qw/patron staff circ_lib item_type circ_time/);
21 #-------------------------------------------------------------------------------
22
23 package action::survey;
24 use base qw/action/;
25 __PACKAGE__->table('action_survey');
26 __PACKAGE__->columns(Primary => 'id');
27 __PACKAGE__->columns(Essential => qw/name description owner start_date
28                                      end_date usr_summary opac poll required/);
29 #-------------------------------------------------------------------------------
30
31 package action::survey_question;
32 use base qw/action/;
33 __PACKAGE__->table('action_survey_question');
34 __PACKAGE__->columns(Primary => 'id');
35 __PACKAGE__->columns(Essential => qw/survey question/);
36 #-------------------------------------------------------------------------------
37
38
39 package action::survey_answer;
40 use base qw/action/;
41 __PACKAGE__->table('action_survey_answer');
42 __PACKAGE__->columns(Primary => 'id');
43 __PACKAGE__->columns(Essential => qw/question answer/);
44 #-------------------------------------------------------------------------------
45
46 package action::survey_response;
47 use base qw/action/;
48 __PACKAGE__->table('action_survey_response');
49 __PACKAGE__->columns(Primary => 'id');
50 __PACKAGE__->columns(Essential => qw/response_group_id usr survey question
51                                      answer answer_date effective_date/);
52 #-------------------------------------------------------------------------------
53
54 package action::circulation;
55 use base qw/action/;
56 __PACKAGE__->table('action_circulation');
57 __PACKAGE__->columns(Primary => 'id');
58 __PACKAGE__->columns(Essential => qw/xact_start usr target_copy circ_lib
59                                      duration duration_rule renewal_remaining
60                                      recuring_fine_rule recuring_fine stop_fines
61                                      max_fine max_fine_rule fine_interval
62                                      stop_fines xact_finish due_date opac_renewal
63                                      checkin_staff circ_staff circ_lib checkin_lib
64                                      stop_fines_time checkin_time desk_renewal
65                                      phone_renewal/);
66
67 #-------------------------------------------------------------------------------
68
69 package action::open_circulation;
70 use base qw/action/;
71 __PACKAGE__->table('action_open_circulation');
72 __PACKAGE__->columns(Primary => 'id');
73 __PACKAGE__->columns(Essential => qw/xact_start usr target_copy circ_lib
74                                      duration duration_rule renewal_remaining
75                                      recuring_fine_rule recuring_fine stop_fines
76                                      max_fine max_fine_rule fine_interval
77                                      stop_fines xact_finish due_date opac_renewal
78                                      checkin_staff circ_staff circ_lib checkin_lib
79                                      stop_fines_time checkin_time desk_renewal
80                                      phone_renewal/);
81
82 #-------------------------------------------------------------------------------
83
84 package action::hold_request;
85 use base qw/action/;
86 __PACKAGE__->table('action_hold_request');
87 __PACKAGE__->columns(Primary => 'id');
88 __PACKAGE__->columns(Essential => qw/request_time capture_time fulfillment_time
89                                      prev_check_time expire_time requestor usr
90                                      hold_type holdable_formats target
91                                      phone_notify email_notify selection_depth
92                                      pickup_lib current_copy request_lib
93                                      fulfillment_staff fulfillment_lib/);
94
95 #-------------------------------------------------------------------------------
96
97 package action::hold_notification;
98 use base qw/action/;
99 __PACKAGE__->table('action_hold_notification');
100 __PACKAGE__->columns(Primary => 'id');
101 __PACKAGE__->columns(Essential => qw/hold method notify_time note/);
102
103 #-------------------------------------------------------------------------------
104
105 package action::hold_copy_map;
106 use base qw/action/;
107 __PACKAGE__->table('action_hold_copy_map');
108 __PACKAGE__->columns(Primary => 'id');
109 __PACKAGE__->columns(Essential => qw/hold target_copy/);
110
111 #-------------------------------------------------------------------------------
112
113 package action::hold_transit_copy;
114 use base qw/action/;
115 __PACKAGE__->table('action_hold_transit_copy');
116 __PACKAGE__->columns(Primary => 'id');
117 __PACKAGE__->columns(Essential => qw/source dest persistant_transfer target_copy
118                                      source_send_time dest_recv_time prev_hop
119                                      copy_status hold/);
120
121 #-------------------------------------------------------------------------------
122
123 package action::transit_copy;
124 use base qw/action/;
125 __PACKAGE__->table('action_transit_copy');
126 __PACKAGE__->columns(Primary => 'id');
127 __PACKAGE__->columns(Essential => qw/source dest persistant_transfer target_copy
128                                      source_send_time dest_recv_time prev_hop
129                                      copy_status/);
130
131 #-------------------------------------------------------------------------------
132
133 package action::unfulfilled_hold_list;
134 use base qw/action/;
135 __PACKAGE__->table('action_unfulfilled_hold_list');
136 __PACKAGE__->columns(Primary => 'id');
137 __PACKAGE__->columns(Essential => qw/hold current_copy circ_lib fail_time /);
138
139 #-------------------------------------------------------------------------------
140
141 1;
142