fossil 0.1.0
Sign up to get free protection for your applications and to get access to all the features.
- data/Rakefile +19 -0
- data/VERSION +1 -0
- data/fossil.gemspec +136 -0
- data/lib/models/ac_qualification.rb +91 -0
- data/lib/models/aircraft.rb +397 -0
- data/lib/models/aircraft_cost.rb +65 -0
- data/lib/models/aircraft_document.rb +41 -0
- data/lib/models/aircraft_log.rb +179 -0
- data/lib/models/aircraft_maint.rb +93 -0
- data/lib/models/aircraft_note.rb +115 -0
- data/lib/models/aircraft_rate.rb +124 -0
- data/lib/models/aircraft_time.rb +87 -0
- data/lib/models/aircraft_type.rb +159 -0
- data/lib/models/airport.rb +256 -0
- data/lib/models/airport_cost.rb +46 -0
- data/lib/models/airport_fbo.rb +98 -0
- data/lib/models/airport_fuel.rb +78 -0
- data/lib/models/airport_service.rb +90 -0
- data/lib/models/ap_operational_msg.rb +33 -0
- data/lib/models/audit_trail.rb +26 -0
- data/lib/models/btrieve_code_name.rb +104 -0
- data/lib/models/cargo.rb +39 -0
- data/lib/models/check_group.rb +17 -0
- data/lib/models/checklist.rb +98 -0
- data/lib/models/city_pair.rb +43 -0
- data/lib/models/code.rb +57 -0
- data/lib/models/comment.rb +30 -0
- data/lib/models/comments2.rb +20 -0
- data/lib/models/company_information.rb +565 -0
- data/lib/models/contact.rb +42 -0
- data/lib/models/contract.rb +53 -0
- data/lib/models/contract_item.rb +58 -0
- data/lib/models/cost_center.rb +16 -0
- data/lib/models/crew_activity.rb +42 -0
- data/lib/models/crew_currency_by_cct.rb +255 -0
- data/lib/models/crew_currency_gen.rb +84 -0
- data/lib/models/crew_duty.rb +128 -0
- data/lib/models/crew_history_item.rb +132 -0
- data/lib/models/crew_information.rb +137 -0
- data/lib/models/crew_leg.rb +127 -0
- data/lib/models/crew_training_group.rb +33 -0
- data/lib/models/crew_training_item.rb +146 -0
- data/lib/models/crew_training_log.rb +39 -0
- data/lib/models/crew_trip.rb +60 -0
- data/lib/models/currency_rate.rb +27 -0
- data/lib/models/exp_record.rb +75 -0
- data/lib/models/field_list.rb +25 -0
- data/lib/models/flight_log_expense.rb +90 -0
- data/lib/models/flt_cas.rb +52 -0
- data/lib/models/flt_crew.rb +80 -0
- data/lib/models/flt_data.rb +132 -0
- data/lib/models/flt_exp.rb +57 -0
- data/lib/models/flt_leg.rb +125 -0
- data/lib/models/group_cost.rb +22 -0
- data/lib/models/icaocode.rb +23 -0
- data/lib/models/language.rb +50 -0
- data/lib/models/leg_request.rb +39 -0
- data/lib/models/leg_time.rb +100 -0
- data/lib/models/logbook.rb +95 -0
- data/lib/models/maint_time.rb +44 -0
- data/lib/models/msg_itin.rb +42 -0
- data/lib/models/msg_trip.rb +56 -0
- data/lib/models/no_fly_list.rb +37 -0
- data/lib/models/note.rb +27 -0
- data/lib/models/one_cost.rb +98 -0
- data/lib/models/passenger.rb +336 -0
- data/lib/models/passenger_rate.rb +51 -0
- data/lib/models/passport.rb +35 -0
- data/lib/models/patient.rb +144 -0
- data/lib/models/pax_ap_serv.rb +30 -0
- data/lib/models/pax_note.rb +109 -0
- data/lib/models/personnel.rb +192 -0
- data/lib/models/place.rb +54 -0
- data/lib/models/planner.rb +57 -0
- data/lib/models/quote.rb +465 -0
- data/lib/models/quote_leg.rb +401 -0
- data/lib/models/report_define.rb +34 -0
- data/lib/models/report_filter.rb +56 -0
- data/lib/models/report_user.rb +54 -0
- data/lib/models/requirements_limit.rb +405 -0
- data/lib/models/sifl_table.rb +43 -0
- data/lib/models/sms.rb +106 -0
- data/lib/models/training_course.rb +34 -0
- data/lib/models/training_group.rb +21 -0
- data/lib/models/training_item.rb +102 -0
- data/lib/models/travel_request.rb +51 -0
- data/lib/models/trip.rb +342 -0
- data/lib/models/trip_leg.rb +1149 -0
- data/lib/models/trip_passenger.rb +188 -0
- data/lib/models/update.rb +38 -0
- data/lib/models/user_information.rb +248 -0
- data/lib/models/user_log.rb +23 -0
- data/lib/models/vendor.rb +93 -0
- data/lib/models/vendor_document.rb +97 -0
- data/lib/models/visa.rb +36 -0
- data/lib/sequel/code_group.rb +89 -0
- data/lib/sequel/fos_dates.rb +54 -0
- data/lib/sequel/metaprogramming.rb +8 -0
- data/lib/sequel/model_patch.rb +277 -0
- data/lib/sequel/pervasive_adapter.rb +214 -0
- data/lib/sequel/serializer/json_serializer.rb +129 -0
- data/lib/sequel/serializer/serializer.rb +94 -0
- data/lib/sequel/serializer/xml_serializer.rb +393 -0
- metadata +157 -0
@@ -0,0 +1,43 @@
|
|
1
|
+
class SiflTable < Sequel::Model(:'sifl table')
|
2
|
+
|
3
|
+
#### BEGIN GENERATED SECTION ####
|
4
|
+
set_primary_key [:'kid - user', :'kid - mult', :'kid - comm', :'kid - date', :'kid - time']
|
5
|
+
|
6
|
+
column_alias :control_1, :'control 1'
|
7
|
+
column_alias :control_2, :'control 2'
|
8
|
+
column_alias :control_3, :'control 3'
|
9
|
+
column_alias :control_4, :'control 4'
|
10
|
+
column_alias :effective_date, :'effective date'
|
11
|
+
column_alias :internal_1, :'internal 1'
|
12
|
+
column_alias :internal_2, :'internal 2'
|
13
|
+
column_alias :internal_3, :'internal 3'
|
14
|
+
column_alias :internal_4, :'internal 4'
|
15
|
+
column_alias :internal_5, :'internal 5'
|
16
|
+
column_alias :internal_key, :'internal key'
|
17
|
+
column_alias :internal0, :'internal0'
|
18
|
+
column_alias :interval_1, :'interval 1'
|
19
|
+
column_alias :interval_2, :'interval 2'
|
20
|
+
column_alias :interval_3, :'interval 3'
|
21
|
+
column_alias :kid_comm, :'kid - comm'
|
22
|
+
column_alias :kid_date, :'kid - date'
|
23
|
+
column_alias :kid_mult, :'kid - mult'
|
24
|
+
column_alias :kid_time, :'kid - time'
|
25
|
+
column_alias :kid_user, :'kid - user'
|
26
|
+
column_alias :money_1, :'money 1'
|
27
|
+
column_alias :money_2, :'money 2'
|
28
|
+
column_alias :money_3, :'money 3'
|
29
|
+
column_alias :money_4, :'money 4'
|
30
|
+
column_alias :non_control_1, :'non control 1'
|
31
|
+
column_alias :non_control_2, :'non control 2'
|
32
|
+
column_alias :non_control_3, :'non control 3'
|
33
|
+
column_alias :non_control_4, :'non control 4'
|
34
|
+
column_alias :purpose, :'purpose'
|
35
|
+
column_alias :reason_1, :'reason 1'
|
36
|
+
column_alias :reason_2, :'reason 2'
|
37
|
+
column_alias :reason_code_1, :'reason code 1'
|
38
|
+
column_alias :reason_code_2, :'reason code 2'
|
39
|
+
column_alias :security, :'security'
|
40
|
+
column_alias :terminal_charge, :'terminal charge'
|
41
|
+
#### END GENERATED SECTION ####
|
42
|
+
|
43
|
+
end
|
data/lib/models/sms.rb
ADDED
@@ -0,0 +1,106 @@
|
|
1
|
+
class Sms < Sequel::Model(:'sms')
|
2
|
+
|
3
|
+
#### BEGIN GENERATED SECTION ####
|
4
|
+
set_primary_key [:'kid - user', :'kid - mult', :'kid - comm', :'kid - date', :'kid - time']
|
5
|
+
|
6
|
+
column_alias :ata_chapter, :'ata chapter'
|
7
|
+
column_alias :ata_code, :'ata code'
|
8
|
+
column_alias :aircraft_cycles, :'aircraft cycles'
|
9
|
+
column_alias :aircraft_hours, :'aircraft hours'
|
10
|
+
column_alias :airprox, :'airprox'
|
11
|
+
column_alias :airspace_class, :'airspace class'
|
12
|
+
column_alias :airspace_type, :'airspace type'
|
13
|
+
column_alias :alt_fl, :'alt_fl'
|
14
|
+
column_alias :autopilot, :'autopilot'
|
15
|
+
column_alias :autothrust, :'autothrust'
|
16
|
+
column_alias :bird_damage, :'bird damage'
|
17
|
+
column_alias :bird_strike, :'bird strike'
|
18
|
+
column_alias :bird_type, :'bird type'
|
19
|
+
column_alias :birds_seen, :'birds seen'
|
20
|
+
column_alias :birds_struck, :'birds struck'
|
21
|
+
column_alias :buffet, :'buffet'
|
22
|
+
column_alias :chg_alt, :'chg alt'
|
23
|
+
column_alias :chg_pitch, :'chg pitch'
|
24
|
+
column_alias :chg_roll, :'chg roll'
|
25
|
+
column_alias :chg_yaw, :'chg yaw'
|
26
|
+
column_alias :cloud_alt, :'cloud alt'
|
27
|
+
column_alias :cloud_type, :'cloud type'
|
28
|
+
column_alias :conseq_code, :'conseq code'
|
29
|
+
column_alias :etops, :'etops'
|
30
|
+
column_alias :fod, :'fod'
|
31
|
+
column_alias :fod_type, :'fod type'
|
32
|
+
column_alias :finding_code, :'finding code'
|
33
|
+
column_alias :flaps, :'flaps'
|
34
|
+
column_alias :flt_phase, :'flt phase'
|
35
|
+
column_alias :flt_type, :'flt type'
|
36
|
+
column_alias :gear, :'gear'
|
37
|
+
column_alias :glideslope, :'glideslope'
|
38
|
+
column_alias :heading, :'heading'
|
39
|
+
column_alias :ias, :'ias'
|
40
|
+
column_alias :ifr, :'ifr'
|
41
|
+
column_alias :imc, :'imc'
|
42
|
+
column_alias :icing, :'icing'
|
43
|
+
column_alias :internal0, :'internal0'
|
44
|
+
column_alias :internal01, :'internal01'
|
45
|
+
column_alias :internal010, :'internal010'
|
46
|
+
column_alias :internal011, :'internal011'
|
47
|
+
column_alias :internal012, :'internal012'
|
48
|
+
column_alias :internal013, :'internal013'
|
49
|
+
column_alias :internal02, :'internal02'
|
50
|
+
column_alias :internal03, :'internal03'
|
51
|
+
column_alias :internal04, :'internal04'
|
52
|
+
column_alias :internal05, :'internal05'
|
53
|
+
column_alias :internal06, :'internal06'
|
54
|
+
column_alias :internal07, :'internal07'
|
55
|
+
column_alias :internal08, :'internal08'
|
56
|
+
column_alias :internal09, :'internal09'
|
57
|
+
column_alias :internalkey, :'internalkey'
|
58
|
+
column_alias :kid_comm, :'kid - comm'
|
59
|
+
column_alias :kid_date, :'kid - date'
|
60
|
+
column_alias :kid_mult, :'kid - mult'
|
61
|
+
column_alias :kid_time, :'kid - time'
|
62
|
+
column_alias :kid_user, :'kid - user'
|
63
|
+
column_alias :light, :'light'
|
64
|
+
column_alias :location, :'location'
|
65
|
+
column_alias :maint_vendor, :'maint vendor'
|
66
|
+
column_alias :mode_c, :'mode c'
|
67
|
+
column_alias :oat, :'oat'
|
68
|
+
column_alias :owner_kid_comm, :'owner kid - comm'
|
69
|
+
column_alias :owner_kid_date, :'owner kid - date'
|
70
|
+
column_alias :owner_kid_mult, :'owner kid - mult'
|
71
|
+
column_alias :owner_kid_time, :'owner kid - time'
|
72
|
+
column_alias :owner_kid_user, :'owner kid - user'
|
73
|
+
column_alias :part_cycles, :'part cycles'
|
74
|
+
column_alias :part_desc, :'part desc'
|
75
|
+
column_alias :part_hours, :'part hours'
|
76
|
+
column_alias :part_manufacturer, :'part manufacturer'
|
77
|
+
column_alias :part_num, :'part num'
|
78
|
+
column_alias :part_vendor, :'part vendor'
|
79
|
+
column_alias :precip_qty, :'precip qty'
|
80
|
+
column_alias :precip_type, :'precip type'
|
81
|
+
column_alias :qnh, :'qnh'
|
82
|
+
column_alias :runway_cat, :'runway cat'
|
83
|
+
column_alias :runway_state, :'runway state'
|
84
|
+
column_alias :runway_type, :'runway type'
|
85
|
+
column_alias :serial_num, :'serial num'
|
86
|
+
column_alias :slats, :'slats'
|
87
|
+
column_alias :spoilers, :'spoilers'
|
88
|
+
column_alias :stick_shake, :'stick shake'
|
89
|
+
column_alias :tcas_action, :'tcas action'
|
90
|
+
column_alias :tcas_active, :'tcas active'
|
91
|
+
column_alias :tcas_conflict, :'tcas conflict'
|
92
|
+
column_alias :tcas_ra, :'tcas ra'
|
93
|
+
column_alias :tcas_ta, :'tcas ta'
|
94
|
+
column_alias :transponder, :'transponder'
|
95
|
+
column_alias :turbulence, :'turbulence'
|
96
|
+
column_alias :turning, :'turning'
|
97
|
+
column_alias :visibility, :'visibility'
|
98
|
+
column_alias :wake_turbulence, :'wake turbulence'
|
99
|
+
column_alias :wind_dir, :'wind dir'
|
100
|
+
column_alias :wind_speed, :'wind speed'
|
101
|
+
column_alias :windshear, :'windshear'
|
102
|
+
column_alias :key0, :'key0'
|
103
|
+
column_alias :key1, :'key1'
|
104
|
+
#### END GENERATED SECTION ####
|
105
|
+
|
106
|
+
end
|
@@ -0,0 +1,34 @@
|
|
1
|
+
class TrainingCourse < Sequel::Model(:'training course')
|
2
|
+
|
3
|
+
#### BEGIN GENERATED SECTION ####
|
4
|
+
set_primary_key [:'kid - user', :'kid - mult', :'kid - comm', :'kid - date', :'kid - time']
|
5
|
+
|
6
|
+
column_alias :aircraft, :'aircraft'
|
7
|
+
column_alias :aircraft_model, :'aircraft model'
|
8
|
+
column_alias :aircraft_model_id, :'aircraft model id'
|
9
|
+
column_alias :aircraft_type, :'aircraft type'
|
10
|
+
column_alias :code, :'code'
|
11
|
+
column_alias :course_group, :'course group'
|
12
|
+
column_alias :course_type, :'course type'
|
13
|
+
column_alias :customer, :'customer'
|
14
|
+
column_alias :faa_type_rating, :'faa type rating'
|
15
|
+
column_alias :fsi, :'fsi'
|
16
|
+
column_alias :internal0, :'internal0'
|
17
|
+
column_alias :internal01, :'internal01'
|
18
|
+
column_alias :kid_comm, :'kid - comm'
|
19
|
+
column_alias :kid_date, :'kid - date'
|
20
|
+
column_alias :kid_mult, :'kid - mult'
|
21
|
+
column_alias :kid_time, :'kid - time'
|
22
|
+
column_alias :kid_user, :'kid - user'
|
23
|
+
column_alias :name, :'name'
|
24
|
+
column_alias :qualification, :'qualification'
|
25
|
+
column_alias :key0, :'key0'
|
26
|
+
column_alias :key1, :'key1'
|
27
|
+
column_alias :key2, :'key2'
|
28
|
+
column_alias :key3, :'key3'
|
29
|
+
column_alias :key4, :'key4'
|
30
|
+
column_alias :key5, :'key5'
|
31
|
+
column_alias :key6, :'key6'
|
32
|
+
#### END GENERATED SECTION ####
|
33
|
+
|
34
|
+
end
|
@@ -0,0 +1,21 @@
|
|
1
|
+
class TrainingGroup < Sequel::Model(:'training group')
|
2
|
+
|
3
|
+
#### BEGIN GENERATED SECTION ####
|
4
|
+
set_primary_key [:'kid - user', :'kid - mult', :'kid - comm', :'kid - date', :'kid - time']
|
5
|
+
|
6
|
+
column_alias :aircraft_type_id, :'aircraft type id'
|
7
|
+
column_alias :base_code, :'base code'
|
8
|
+
column_alias :company_code, :'company code'
|
9
|
+
column_alias :description, :'description'
|
10
|
+
column_alias :fiscal_year, :'fiscal year'
|
11
|
+
column_alias :group_type, :'group type'
|
12
|
+
column_alias :internal0, :'internal0'
|
13
|
+
column_alias :kid_comm, :'kid - comm'
|
14
|
+
column_alias :kid_date, :'kid - date'
|
15
|
+
column_alias :kid_mult, :'kid - mult'
|
16
|
+
column_alias :kid_time, :'kid - time'
|
17
|
+
column_alias :kid_user, :'kid - user'
|
18
|
+
column_alias :type_rating_code, :'type rating code'
|
19
|
+
#### END GENERATED SECTION ####
|
20
|
+
|
21
|
+
end
|
@@ -0,0 +1,102 @@
|
|
1
|
+
class TrainingItem < Sequel::Model(:'training item')
|
2
|
+
|
3
|
+
#### BEGIN GENERATED SECTION ####
|
4
|
+
set_primary_key [:'kid - user', :'kid - mult', :'kid - comm', :'kid - date', :'kid - time']
|
5
|
+
|
6
|
+
column_alias :aircraft_id, :'aircraft id'
|
7
|
+
column_alias :aircraft_type_id, :'aircraft type id'
|
8
|
+
column_alias :airport_id, :'airport id'
|
9
|
+
column_alias :airport_id_prefix, :'airport id prefix'
|
10
|
+
column_alias :base_code, :'base code'
|
11
|
+
column_alias :company_code, :'company code'
|
12
|
+
column_alias :course_code, :'course code'
|
13
|
+
column_alias :create_logbook, :'create logbook'
|
14
|
+
column_alias :crew_currency, :'crew currency'
|
15
|
+
column_alias :crew_pos_exclude, :'crew pos exclude'
|
16
|
+
column_alias :crew_position, :'crew position'
|
17
|
+
column_alias :description, :'description'
|
18
|
+
column_alias :end_of_month, :'end of month'
|
19
|
+
column_alias :fsi_aircraft_type, :'fsi aircraft type'
|
20
|
+
column_alias :fsi_course_far, :'fsi course far'
|
21
|
+
column_alias :fsi_req_ac_type, :'fsi req ac type'
|
22
|
+
column_alias :fiscal_year, :'fiscal year'
|
23
|
+
column_alias :flight_restrictive, :'flight restrictive'
|
24
|
+
column_alias :flog_crew, :'flog crew'
|
25
|
+
column_alias :flog_pilot_flying, :'flog pilot flying'
|
26
|
+
column_alias :flog_pilots, :'flog pilots'
|
27
|
+
column_alias :flog_unused, :'flog unused'
|
28
|
+
column_alias :grace_per_minus_days, :'grace per minus days'
|
29
|
+
column_alias :grace_per_minus_int, :'grace per minus int'
|
30
|
+
column_alias :grace_per_plus_days, :'grace per plus days'
|
31
|
+
column_alias :grace_per_plus_int, :'grace per plus int'
|
32
|
+
column_alias :grace_period, :'grace period'
|
33
|
+
column_alias :group_kid_comm, :'group kid - comm'
|
34
|
+
column_alias :group_kid_date, :'group kid - date'
|
35
|
+
column_alias :group_kid_mult, :'group kid - mult'
|
36
|
+
column_alias :group_kid_time, :'group kid - time'
|
37
|
+
column_alias :group_kid_user, :'group kid - user'
|
38
|
+
column_alias :group_type, :'group type'
|
39
|
+
column_alias :hide, :'hide'
|
40
|
+
column_alias :ignore_sub_items, :'ignore sub items'
|
41
|
+
column_alias :instr_pos, :'instr pos'
|
42
|
+
column_alias :instr_qual, :'instr qual'
|
43
|
+
column_alias :internal01, :'internal01'
|
44
|
+
column_alias :internal02, :'internal02'
|
45
|
+
column_alias :international, :'international'
|
46
|
+
column_alias :item_level, :'item level'
|
47
|
+
column_alias :kid_comm, :'kid - comm'
|
48
|
+
column_alias :kid_date, :'kid - date'
|
49
|
+
column_alias :kid_mult, :'kid - mult'
|
50
|
+
column_alias :kid_time, :'kid - time'
|
51
|
+
column_alias :kid_user, :'kid - user'
|
52
|
+
column_alias :level1_kid_comm, :'level1 kid - comm'
|
53
|
+
column_alias :level1_kid_date, :'level1 kid - date'
|
54
|
+
column_alias :level1_kid_mult, :'level1 kid - mult'
|
55
|
+
column_alias :level1_kid_time, :'level1 kid - time'
|
56
|
+
column_alias :level1_kid_user, :'level1 kid - user'
|
57
|
+
column_alias :level2_kid_comm, :'level2 kid - comm'
|
58
|
+
column_alias :level2_kid_date, :'level2 kid - date'
|
59
|
+
column_alias :level2_kid_mult, :'level2 kid - mult'
|
60
|
+
column_alias :level2_kid_time, :'level2 kid - time'
|
61
|
+
column_alias :level2_kid_user, :'level2 kid - user'
|
62
|
+
column_alias :logbook_field, :'logbook field'
|
63
|
+
column_alias :max_age, :'max age'
|
64
|
+
column_alias :min_age, :'min age'
|
65
|
+
column_alias :month_interval, :'month interval'
|
66
|
+
column_alias :no_certify, :'no certify'
|
67
|
+
column_alias :no_email_alert, :'no email alert'
|
68
|
+
column_alias :note, :'note'
|
69
|
+
column_alias :order, :'order'
|
70
|
+
column_alias :pilots, :'pilots'
|
71
|
+
column_alias :prof_hours, :'prof hours'
|
72
|
+
column_alias :prof_period, :'prof period'
|
73
|
+
column_alias :prof_required, :'prof required'
|
74
|
+
column_alias :prof_units, :'prof units'
|
75
|
+
column_alias :reference, :'reference'
|
76
|
+
column_alias :reg_1, :'reg 1'
|
77
|
+
column_alias :reg_10, :'reg 10'
|
78
|
+
column_alias :reg_2, :'reg 2'
|
79
|
+
column_alias :reg_3, :'reg 3'
|
80
|
+
column_alias :reg_4, :'reg 4'
|
81
|
+
column_alias :reg_5, :'reg 5'
|
82
|
+
column_alias :reg_6, :'reg 6'
|
83
|
+
column_alias :reg_7, :'reg 7'
|
84
|
+
column_alias :reg_8, :'reg 8'
|
85
|
+
column_alias :reg_9, :'reg 9'
|
86
|
+
column_alias :reg_exclude, :'reg exclude'
|
87
|
+
column_alias :reg_filler, :'reg filler'
|
88
|
+
column_alias :reg_qualification, :'reg qualification'
|
89
|
+
column_alias :report_level, :'report level'
|
90
|
+
column_alias :report_name, :'report name'
|
91
|
+
column_alias :required_time, :'required time'
|
92
|
+
column_alias :runway_len, :'runway len'
|
93
|
+
column_alias :type_rating_code, :'type rating code'
|
94
|
+
column_alias :key0, :'key0'
|
95
|
+
column_alias :key1, :'key1'
|
96
|
+
column_alias :key2, :'key2'
|
97
|
+
column_alias :key3, :'key3'
|
98
|
+
column_alias :key4, :'key4'
|
99
|
+
column_alias :key5, :'key5'
|
100
|
+
#### END GENERATED SECTION ####
|
101
|
+
|
102
|
+
end
|
@@ -0,0 +1,51 @@
|
|
1
|
+
class TravelRequest < Sequel::Model(:'travel requests')
|
2
|
+
|
3
|
+
#### BEGIN GENERATED SECTION ####
|
4
|
+
set_primary_key [:'kid - user', :'kid - mult', :'kid - comm', :'kid - date', :'kid - time']
|
5
|
+
|
6
|
+
column_alias :begin_date, :'begin date'
|
7
|
+
column_alias :clob, :'clob'
|
8
|
+
column_alias :comment, :'comment'
|
9
|
+
column_alias :depart_ap_icao_code, :'depart ap icao code'
|
10
|
+
column_alias :departure_ap_id, :'departure ap id'
|
11
|
+
column_alias :dest_ap_icao_code, :'dest ap icao code'
|
12
|
+
column_alias :destination_ap_id, :'destination ap id'
|
13
|
+
column_alias :end_date, :'end date'
|
14
|
+
column_alias :from_city, :'from city'
|
15
|
+
column_alias :from_state, :'from state'
|
16
|
+
column_alias :initials, :'initials'
|
17
|
+
column_alias :internal0, :'internal0'
|
18
|
+
column_alias :kid_comm, :'kid - comm'
|
19
|
+
column_alias :kid_date, :'kid - date'
|
20
|
+
column_alias :kid_mult, :'kid - mult'
|
21
|
+
column_alias :kid_time, :'kid - time'
|
22
|
+
column_alias :kid_user, :'kid - user'
|
23
|
+
column_alias :match, :'match'
|
24
|
+
column_alias :name, :'name'
|
25
|
+
column_alias :name_key, :'name key'
|
26
|
+
column_alias :note, :'note'
|
27
|
+
column_alias :pax_kid_comm, :'pax kid - comm'
|
28
|
+
column_alias :pax_kid_date, :'pax kid - date'
|
29
|
+
column_alias :pax_kid_mult, :'pax kid - mult'
|
30
|
+
column_alias :pax_kid_time, :'pax kid - time'
|
31
|
+
column_alias :pax_kid_user, :'pax kid - user'
|
32
|
+
column_alias :scheduled, :'scheduled'
|
33
|
+
column_alias :seats, :'seats'
|
34
|
+
column_alias :to_city, :'to city'
|
35
|
+
column_alias :to_state, :'to state'
|
36
|
+
column_alias :trip_kid_comm, :'trip kid - comm'
|
37
|
+
column_alias :trip_kid_date, :'trip kid - date'
|
38
|
+
column_alias :trip_kid_mult, :'trip kid - mult'
|
39
|
+
column_alias :trip_kid_time, :'trip kid - time'
|
40
|
+
column_alias :trip_kid_user, :'trip kid - user'
|
41
|
+
column_alias :key0, :'key0'
|
42
|
+
column_alias :key1, :'key1'
|
43
|
+
column_alias :key2, :'key2'
|
44
|
+
column_alias :key3, :'key3'
|
45
|
+
column_alias :key4, :'key4'
|
46
|
+
column_alias :key5, :'key5'
|
47
|
+
column_alias :key6, :'key6'
|
48
|
+
column_alias :key7, :'key7'
|
49
|
+
#### END GENERATED SECTION ####
|
50
|
+
|
51
|
+
end
|
data/lib/models/trip.rb
ADDED
@@ -0,0 +1,342 @@
|
|
1
|
+
class Trip < Sequel::Model(:'trips')
|
2
|
+
# NOTE - Count of instances as of 06/01/2009 => 32927
|
3
|
+
|
4
|
+
# Many to one associations with atomic primary keys
|
5
|
+
many_to_one :aircraft, :class=>:Aircraft, :key=>:'aircraft id', :primary_key=>:'aircraft id'
|
6
|
+
many_to_one :aircraft_type, :class=>:AircraftType, :key=>:'aircraft type id', :primary_key=>:'aircraft type id'
|
7
|
+
many_to_one :locked_by, :class=>:User, :key=>:'locked by - user id', :primary_key=>:'users initials'
|
8
|
+
|
9
|
+
# Many to one associations with custom treatment
|
10
|
+
many_to_one :popup_comment, :class=>:Comment, :key=>nil, :dataset=>proc{Comment.filter( :kid_date=>kid_date, :kid_time=>kid_time, :kid_user=>kid_user, :kid_mult=>kid_mult, :kid_comm=>((kid_comm*10)+4) )}
|
11
|
+
many_to_one :lead_pax, :class=>:TripPassenger, :key=>nil,
|
12
|
+
:graph_only_conditions => { :"trip kid - date" => :'kid - date', :"trip kid - time" => :'kid - time', :"trip kid - user" => :'kid - user', :"trip kid - mult" => :'kid - mult', :"trip kid - comm" => :'kid - comm', :'lead pax' => 1 },
|
13
|
+
:dataset => lambda{ TripPassenger.filter( :"trip kid - date"=>self[:'kid - date'], :"trip kid - time"=>self[:'kid - time'], :"trip kid - user"=>self[:'kid - user'], :"trip kid - mult"=>self[:'kid - mult'], :"trip kid - comm"=>self[:'kid - comm'], :'lead pax' => 1) }
|
14
|
+
|
15
|
+
# Many to one associations with composite primary keys
|
16
|
+
n_to_o :quote, :class=>:Quote, :prefix=>'quote'
|
17
|
+
n_to_o :trip_authorizer, :class=>:Passenger, :prefix=>'author'
|
18
|
+
n_to_o :trip_planner, :class=>:Passenger, :prefix=>'planner'
|
19
|
+
n_to_o :trip_requester, :class=>:Passenger, :prefix=>'requester'
|
20
|
+
|
21
|
+
# One to many associations with composite primary keys
|
22
|
+
o_to_n :crew_trips, :class=>:CrewTrip, :prefix=>'trip'
|
23
|
+
o_to_n :trip_legs, :class=>:TripLeg, :prefix=>'trips'
|
24
|
+
o_to_n :audit_trails, :class=>:AuditTrail, :prefix=>'owner'
|
25
|
+
o_to_n :passengers, :class => :TripPassenger, :prefix => 'trip'
|
26
|
+
o_to_n :attachments, :class => :VendorDocument, :prefix => 'vendor'
|
27
|
+
o_to_n :comments, :class=>:Comment, :prefix=>'owner'
|
28
|
+
|
29
|
+
def _add_attachment(attachment)
|
30
|
+
attachment.vendor_kid_date = self.kid_date
|
31
|
+
attachment.vendor_kid_time = self.kid_time
|
32
|
+
attachment.vendor_kid_user = self.kid_user
|
33
|
+
attachment.vendor_kid_comm = self.kid_comm
|
34
|
+
attachment.vendor_kid_mult = self.kid_mult
|
35
|
+
attachment.save
|
36
|
+
end
|
37
|
+
|
38
|
+
# One to many associations with composite primary key (reverse lookup)
|
39
|
+
one_to_many :trip_passengers, :class=>:TripPassenger, :key=>nil, :dataset=>proc{TripPassenger.filter( :trip_kid_date=>self.kid_date, :trip_kid_time=>self.kid_time,:trip_kid_user=>self.kid_user,:trip_kid_comm=>self.kid_comm,:trip_kid_mult=>self.kid_mult)}
|
40
|
+
one_to_many :all_comments, :class=>:Comment, :dataset=>proc{Comment.filter( :kid_date=>kid_date, :kid_time=>kid_time, :kid_user=>kid_user, :kid_mult=>kid_mult, :kid_comm=>(kid_comm*10)..(kid_comm*10+9))}
|
41
|
+
|
42
|
+
# Code associations
|
43
|
+
code_association :department, :'department code', :department
|
44
|
+
code_association :company, :'company code', :company
|
45
|
+
code_association :division, :'division code', :division
|
46
|
+
code_association :purpose, :'purpose code', :purpose
|
47
|
+
code_association :trip_type_value, :'trip type code', :trip_type
|
48
|
+
code_association :rate_type, :'rate type code', :aircraft_rate
|
49
|
+
code_association :base, :'base code', :location
|
50
|
+
code_association :cancellation_code, :'cancel code', :cancellation_code
|
51
|
+
code_association :passenger_rate, :'pax rate', :passenger_rate
|
52
|
+
code_association :approval_code, :'approval_code', :trip_approval
|
53
|
+
code_association :special_qualification, :'specialqualification', :special_qualification
|
54
|
+
|
55
|
+
# Column views
|
56
|
+
column_view :kid_date, :date, :scheduled_date
|
57
|
+
|
58
|
+
#### BEGIN GENERATED SECTION ####
|
59
|
+
set_primary_key [:'kid - user', :'kid - mult', :'kid - comm', :'kid - date', :'kid - time']
|
60
|
+
|
61
|
+
column_alias :ac_owner_code, :'ac owner code'
|
62
|
+
column_alias :ac_rest_type, :'ac rest type'
|
63
|
+
column_alias :ac_tail_number, :'ac tail number'
|
64
|
+
column_alias :aircraft_id, :'aircraft id'
|
65
|
+
column_alias :aircraft_type_id, :'aircraft type id'
|
66
|
+
column_alias :airfare, :'airfare'
|
67
|
+
column_alias :airfare_fixed, :'airfare fixed'
|
68
|
+
column_alias :approval_code, :'approval code'
|
69
|
+
column_alias :arrival_date_gmt, :'arrival date - gmt'
|
70
|
+
column_alias :arrival_date_home, :'arrival date - home'
|
71
|
+
column_alias :arrival_date_local, :'arrival date - local'
|
72
|
+
column_alias :author_kid_comm, :'author kid - comm'
|
73
|
+
column_alias :author_kid_date, :'author kid - date'
|
74
|
+
column_alias :author_kid_mult, :'author kid - mult'
|
75
|
+
column_alias :author_kid_time, :'author kid - time'
|
76
|
+
column_alias :author_kid_user, :'author kid - user'
|
77
|
+
column_alias :authorizer, :'authorizer'
|
78
|
+
column_alias :base_code, :'base code'
|
79
|
+
column_alias :billable, :'billable'
|
80
|
+
column_alias :billable_cost, :'billable cost'
|
81
|
+
column_alias :billable_cost_fixed, :'billable cost fixed'
|
82
|
+
column_alias :billable_expenses, :'billable expenses'
|
83
|
+
column_alias :business_reason, :'business reason'
|
84
|
+
column_alias :cancel_code, :'cancel code'
|
85
|
+
column_alias :company_code, :'company code'
|
86
|
+
column_alias :contract_number, :'contract number'
|
87
|
+
column_alias :cost, :'cost'
|
88
|
+
column_alias :cost_center, :'cost center'
|
89
|
+
column_alias :cost_fixed, :'cost fixed'
|
90
|
+
column_alias :cost_percent, :'cost percent'
|
91
|
+
column_alias :crew_brief, :'crew brief'
|
92
|
+
column_alias :d_h_cost, :'d/h cost'
|
93
|
+
column_alias :date_to_gmt_offset, :'date to gmt offset'
|
94
|
+
column_alias :depart_date_home, :'depart date - home'
|
95
|
+
column_alias :depart_date_local, :'depart date - local'
|
96
|
+
column_alias :department_code, :'department code'
|
97
|
+
column_alias :departure_date_gmt, :'departure date - gmt'
|
98
|
+
column_alias :dept_date_gmt_offset, :'dept date gmt offset'
|
99
|
+
column_alias :division_code, :'division code'
|
100
|
+
column_alias :email, :'email'
|
101
|
+
column_alias :eta_gmt, :'eta - gmt'
|
102
|
+
column_alias :eta_home, :'eta - home'
|
103
|
+
column_alias :eta_local, :'eta - local'
|
104
|
+
column_alias :etd_gmt, :'etd - gmt'
|
105
|
+
column_alias :etd_home, :'etd - home'
|
106
|
+
column_alias :etd_local, :'etd - local'
|
107
|
+
column_alias :ext_trip_id, :'ext trip id'
|
108
|
+
column_alias :ext_trip_num, :'ext trip num'
|
109
|
+
column_alias :fs_apis, :'fs apis'
|
110
|
+
column_alias :fs_aro_dom_slot, :'fs aro dom slot'
|
111
|
+
column_alias :fs_ac_parking, :'fs ac parking'
|
112
|
+
column_alias :fs_ac_security, :'fs ac security'
|
113
|
+
column_alias :fs_aircraft_charter, :'fs aircraft charter'
|
114
|
+
column_alias :fs_catering, :'fs catering'
|
115
|
+
column_alias :fs_crew_hotel, :'fs crew hotel'
|
116
|
+
column_alias :fs_crew_limo, :'fs crew limo'
|
117
|
+
column_alias :fs_crew_visa, :'fs crew visa'
|
118
|
+
column_alias :fs_customs, :'fs customs'
|
119
|
+
column_alias :fs_flight_following, :'fs flight following'
|
120
|
+
column_alias :fs_flight_plan_cond, :'fs flight plan cond'
|
121
|
+
column_alias :fs_flight_planning, :'fs flight planning'
|
122
|
+
column_alias :fs_flt_plan_wind, :'fs flt plan wind'
|
123
|
+
column_alias :fs_fueler, :'fs fueler'
|
124
|
+
column_alias :fs_gnd_handling, :'fs gnd handling'
|
125
|
+
column_alias :fs_hotel, :'fs hotel'
|
126
|
+
column_alias :fs_landing_permit, :'fs landing permit'
|
127
|
+
column_alias :fs_misc, :'fs misc'
|
128
|
+
column_alias :fs_overflight_permit, :'fs overflight permit'
|
129
|
+
column_alias :fs_prefile, :'fs prefile'
|
130
|
+
column_alias :fs_prelim_flt_plan, :'fs prelim flt plan'
|
131
|
+
column_alias :fs_security_guard, :'fs security guard'
|
132
|
+
column_alias :fs_slots, :'fs slots'
|
133
|
+
column_alias :fs_transportation, :'fs transportation'
|
134
|
+
column_alias :fs_uplink_afis, :'fs uplink afis'
|
135
|
+
column_alias :fs_uplink_uvdata, :'fs uplink uvdata'
|
136
|
+
column_alias :fs_visa, :'fs visa'
|
137
|
+
column_alias :fs_weather_brief, :'fs weather brief'
|
138
|
+
column_alias :fs_weather_outlook, :'fs weather outlook'
|
139
|
+
column_alias :fs_weather_update, :'fs weather update'
|
140
|
+
column_alias :fs_wx_brief_intl, :'fs wx brief intl'
|
141
|
+
column_alias :fs2, :'fs2'
|
142
|
+
column_alias :flight_plan_code, :'flight plan code'
|
143
|
+
column_alias :flt_following, :'flt following'
|
144
|
+
column_alias :group, :'group'
|
145
|
+
column_alias :history, :'history'
|
146
|
+
column_alias :internal_10, :'internal 10'
|
147
|
+
column_alias :internal_11, :'internal 11'
|
148
|
+
column_alias :internal_6, :'internal 6'
|
149
|
+
column_alias :internal01, :'internal01'
|
150
|
+
column_alias :internal02, :'internal02'
|
151
|
+
column_alias :internal03, :'internal03'
|
152
|
+
column_alias :internal04, :'internal04'
|
153
|
+
column_alias :intl_leg_count, :'intl leg count'
|
154
|
+
column_alias :kid_comm, :'kid - comm'
|
155
|
+
column_alias :kid_date, :'kid - date'
|
156
|
+
column_alias :kid_mult, :'kid - mult'
|
157
|
+
column_alias :kid_time, :'kid - time'
|
158
|
+
column_alias :kid_user, :'kid - user'
|
159
|
+
column_alias :language, :'language'
|
160
|
+
column_alias :last_update_date, :'last update date'
|
161
|
+
column_alias :last_update_time, :'last update time'
|
162
|
+
column_alias :last_updated, :'last updated'
|
163
|
+
column_alias :leg_billable, :'leg billable'
|
164
|
+
column_alias :leg_count, :'leg count'
|
165
|
+
column_alias :leg_flight_number, :'leg flight number'
|
166
|
+
column_alias :lock_date, :'lock date'
|
167
|
+
column_alias :lock_time, :'lock time'
|
168
|
+
column_alias :lock_user, :'lock user'
|
169
|
+
column_alias :locked, :'locked'
|
170
|
+
column_alias :locked_by_user_id, :'locked by - user id'
|
171
|
+
column_alias :min_average_ac_1, :'min average ac 1'
|
172
|
+
column_alias :min_average_ac_2, :'min average ac 2'
|
173
|
+
column_alias :min_average_ac_3, :'min average ac 3'
|
174
|
+
column_alias :min_average_ac_4, :'min average ac 4'
|
175
|
+
column_alias :min_average_legs_1, :'min average legs 1'
|
176
|
+
column_alias :min_average_legs_2, :'min average legs 2'
|
177
|
+
column_alias :min_average_legs_3, :'min average legs 3'
|
178
|
+
column_alias :min_average_legs_4, :'min average legs 4'
|
179
|
+
column_alias :min_average_pax_1, :'min average pax 1'
|
180
|
+
column_alias :min_average_pax_2, :'min average pax 2'
|
181
|
+
column_alias :min_average_pax_3, :'min average pax 3'
|
182
|
+
column_alias :min_average_pax_4, :'min average pax 4'
|
183
|
+
column_alias :no_fly_date, :'no fly date'
|
184
|
+
column_alias :no_fly_number, :'no fly number'
|
185
|
+
column_alias :no_fly_number_str, :'no fly number str'
|
186
|
+
column_alias :no_fly_user, :'no fly user'
|
187
|
+
column_alias :note, :'note'
|
188
|
+
column_alias :open_checklist, :'open checklist'
|
189
|
+
column_alias :pager, :'pager'
|
190
|
+
column_alias :pax_billable, :'pax billable'
|
191
|
+
column_alias :pax_rate, :'pax rate'
|
192
|
+
column_alias :planner, :'planner'
|
193
|
+
column_alias :planner_fax, :'planner fax'
|
194
|
+
column_alias :planner_kid_comm, :'planner kid - comm'
|
195
|
+
column_alias :planner_kid_date, :'planner kid - date'
|
196
|
+
column_alias :planner_kid_mult, :'planner kid - mult'
|
197
|
+
column_alias :planner_kid_time, :'planner kid - time'
|
198
|
+
column_alias :planner_kid_user, :'planner kid - user'
|
199
|
+
column_alias :planner_phone, :'planner phone'
|
200
|
+
column_alias :priority, :'priority'
|
201
|
+
column_alias :privilege, :'privilege'
|
202
|
+
column_alias :problem_set, :'problem set'
|
203
|
+
column_alias :purpose_code, :'purpose code'
|
204
|
+
column_alias :quote_kid_comm, :'quote kid - comm'
|
205
|
+
column_alias :quote_kid_date, :'quote kid - date'
|
206
|
+
column_alias :quote_kid_mult, :'quote kid - mult'
|
207
|
+
column_alias :quote_kid_time, :'quote kid - time'
|
208
|
+
column_alias :quote_kid_user, :'quote kid - user'
|
209
|
+
column_alias :quoted_ac_cost, :'quoted a/c cost'
|
210
|
+
column_alias :quoted_addl_cost, :'quoted addl cost'
|
211
|
+
column_alias :quoted_fuel_cost, :'quoted fuel cost'
|
212
|
+
column_alias :quotes_ac_rate, :'quotes ac rate'
|
213
|
+
column_alias :rate_type_code, :'rate type code'
|
214
|
+
column_alias :regulation, :'regulation'
|
215
|
+
column_alias :release_date, :'release date'
|
216
|
+
column_alias :release_time, :'release time'
|
217
|
+
column_alias :release_user, :'release user'
|
218
|
+
column_alias :request_date, :'request date'
|
219
|
+
column_alias :request_number, :'request number'
|
220
|
+
column_alias :requester_kid_comm, :'requester kid - comm'
|
221
|
+
column_alias :requester_kid_date, :'requester kid - date'
|
222
|
+
column_alias :requester_kid_mult, :'requester kid - mult'
|
223
|
+
column_alias :requester_kid_time, :'requester kid - time'
|
224
|
+
column_alias :requester_kid_user, :'requester kid - user'
|
225
|
+
column_alias :requester_name, :'requester name'
|
226
|
+
column_alias :requester_name_key, :'requester name key'
|
227
|
+
column_alias :requester_purpose, :'requester purpose'
|
228
|
+
column_alias :restricted, :'restricted'
|
229
|
+
column_alias :route_comment, :'route comment'
|
230
|
+
column_alias :shuttle_flight, :'shuttle flight'
|
231
|
+
column_alias :sortie, :'sortie'
|
232
|
+
column_alias :special_handling, :'special handling'
|
233
|
+
column_alias :specialqualification, :'specialqualification'
|
234
|
+
column_alias :status, :'status'
|
235
|
+
column_alias :status_closed, :'status closed'
|
236
|
+
column_alias :tax, :'tax'
|
237
|
+
column_alias :total_block_time, :'total block time'
|
238
|
+
column_alias :total_expenses, :'total expenses'
|
239
|
+
column_alias :total_flight_time, :'total flight time'
|
240
|
+
column_alias :total_hobbs, :'total hobbs'
|
241
|
+
column_alias :total_nautical_miles, :'total nautical miles'
|
242
|
+
column_alias :total_pax_cost, :'total pax cost'
|
243
|
+
column_alias :total_pax_count, :'total pax count'
|
244
|
+
column_alias :total_statute_miles, :'total statute miles'
|
245
|
+
column_alias :trip_number, :'trip number'
|
246
|
+
column_alias :trip_pax_comment, :'trip pax comment'
|
247
|
+
column_alias :trip_request, :'trip request'
|
248
|
+
column_alias :trip_type_code, :'trip type code'
|
249
|
+
column_alias :vendor_id, :'vendor id'
|
250
|
+
column_alias :winter, :'winter'
|
251
|
+
column_alias :internal_cost_3, :'internal cost 3'
|
252
|
+
column_alias :internal_cost_4, :'internal cost 4'
|
253
|
+
column_alias :internal_cost_5, :'internal cost 5'
|
254
|
+
column_alias :key0, :'key0'
|
255
|
+
column_alias :key1, :'key1'
|
256
|
+
column_alias :key10, :'key10'
|
257
|
+
column_alias :key11, :'key11'
|
258
|
+
column_alias :key12, :'key12'
|
259
|
+
column_alias :key13, :'key13'
|
260
|
+
column_alias :key14, :'key14'
|
261
|
+
column_alias :key2, :'key2'
|
262
|
+
column_alias :key3, :'key3'
|
263
|
+
column_alias :key4, :'key4'
|
264
|
+
column_alias :key5, :'key5'
|
265
|
+
column_alias :key6, :'key6'
|
266
|
+
column_alias :key7, :'key7'
|
267
|
+
column_alias :key8, :'key8'
|
268
|
+
column_alias :key9, :'key9'
|
269
|
+
column_alias :reserved_2, :'reserved 2'
|
270
|
+
column_alias :reserved_3, :'reserved 3'
|
271
|
+
#### END GENERATED SECTION ####
|
272
|
+
|
273
|
+
def passenger_list
|
274
|
+
return '' unless passengers
|
275
|
+
pax_list = passengers.collect{|v| (v.lead_pax==1 ? "Lead Pax " : '' ) + v.name}.uniq!
|
276
|
+
pax_list ? pax_list.join(" : ") : ''
|
277
|
+
end
|
278
|
+
|
279
|
+
##### start trip_invoicing_report #######
|
280
|
+
TRIP_INVOICING_REPORT_PATH = File.join(RAILS_ROOT,'public','system','reports')
|
281
|
+
TRIP_INVOICING_FILE_NAME = 'AccountsReceiveableTripInvoicing.csv'
|
282
|
+
TRIP_INVOICING_REPORT_FILE_PATH = File.join(TRIP_INVOICING_REPORT_PATH,TRIP_INVOICING_FILE_NAME)
|
283
|
+
|
284
|
+
delegate :invoice_ready, :to=> :quote, :prefix => true, :allow_nil => true
|
285
|
+
|
286
|
+
column_view :status, :boolean
|
287
|
+
column_view :status_closed, :boolean
|
288
|
+
column_view :cancel_code, :boolean
|
289
|
+
column_view :arrival_date_gmt, :date, :planned_arrival_date_gmt
|
290
|
+
|
291
|
+
def quote_status
|
292
|
+
( quote_invoice_ready == 1 ) ? "Ready" : "Not Ready"
|
293
|
+
end
|
294
|
+
|
295
|
+
def date_difference(to_date)
|
296
|
+
(to_date - planned_arrival_date_gmt).to_i
|
297
|
+
end
|
298
|
+
|
299
|
+
def trip_requester_name
|
300
|
+
name = trip_requester.name if trip_requester
|
301
|
+
name || requester_name
|
302
|
+
end
|
303
|
+
|
304
|
+
TRIP_INVOICING_HEADERS =
|
305
|
+
['Date Trip Completed', 'Trip Number', 'Tail Number', 'Client', 'Trip Completed',
|
306
|
+
'Trip Cancelled', 'Trip Closed', 'Quote Status', 'Trip Type', "Number of Days from PCS to AR"]
|
307
|
+
|
308
|
+
TRIP_INVOICING_FIELDS =
|
309
|
+
[:planned_arrival_date_gmt_view_mdy, :trip_number, :ac_tail_number, :trip_requester_name,
|
310
|
+
:status_boolean_view, :cancel_code_boolean_view, :status_closed_boolean_view,
|
311
|
+
:quote_status, :trip_type_value_description]
|
312
|
+
|
313
|
+
def self.create_trip_invoicing_report(to_date)
|
314
|
+
from_date = to_date - 30
|
315
|
+
trips = trip_invoicing_report_query(from_date, to_date).sort_by{|t| t.date_difference(to_date) }
|
316
|
+
# write the csv file
|
317
|
+
FasterCSV.open(TRIP_INVOICING_REPORT_FILE_PATH, "w") do |csv|
|
318
|
+
csv << TRIP_INVOICING_HEADERS
|
319
|
+
trips.each do |trip|
|
320
|
+
csv << TRIP_INVOICING_FIELDS.collect{|field| trip.send(field)} + [trip.date_difference(to_date)]
|
321
|
+
end
|
322
|
+
end
|
323
|
+
end
|
324
|
+
|
325
|
+
def self.trip_invoicing_report_query(from_date, to_date)
|
326
|
+
unless @trip_invoicing_report_ps
|
327
|
+
ds = Trip.
|
328
|
+
filter( :arrival_date_gmt >= :$from_date).filter( :arrival_date_gmt <= :$to_date ).
|
329
|
+
filter( :trip_number > 0 ).
|
330
|
+
eager_graph(:trip_requester, :quote, :trip_type_value).
|
331
|
+
select_fields(
|
332
|
+
:self => [:trip_number, :requester_name, :arrival_date_gmt, :trip_number, :trip_type_code,
|
333
|
+
:ac_tail_number, :status, :status_closed, :cancel_code],
|
334
|
+
:quote => [:invoice_ready],
|
335
|
+
:trip_type_value => [:code, :description],
|
336
|
+
:trip_requester => [:name])
|
337
|
+
@trip_invoicing_report_ps = ds.prepare(:select, :trip_invoicing_report_ps)
|
338
|
+
end
|
339
|
+
@trip_invoicing_report_ps.call(:from_date=> from_date.to_fos_days, :to_date => (to_date+1).to_fos_days)
|
340
|
+
end
|
341
|
+
##### end trip_invoicing_report #######
|
342
|
+
end
|