fossil 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- 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
|