Skip to content

Commit 4e1ca7b

Browse files
Merge pull request #104 from co-cddo/remove-airtable-code
Remove AirTable code
2 parents e7e85b9 + 40d3bbe commit 4e1ca7b

34 files changed

Lines changed: 55 additions & 701 deletions

‎app/models/agreement.rb‎

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,4 @@
11
class Agreement < DataTable
2-
self.air_table_name = "Information Sharing Agreements"
32
self.rapid_table_name = :agreements
43
self.rapid_name_field = :agreement_name
54

‎app/models/agreement_control_person.rb‎

Lines changed: 1 addition & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -8,16 +8,7 @@ class << self
88
def populate
99
delete_all # Simplest way to ensure records deleted from Airtable do not persist in local database
1010

11-
air_table_data_source? ? populate_from_airtable : populate_from_rapid
12-
end
13-
14-
def populate_from_airtable
15-
Agreement.find_each do |agreement|
16-
(agreement.fields["controllers"] || []).each do |control_person_id|
17-
control_person = ControlPerson.find_by(record_id: control_person_id)
18-
find_or_create_by!(agreement:, control_person:) if control_person.present?
19-
end
20-
end
11+
populate_from_rapid
2112
end
2213

2314
def populate_from_rapid

‎app/models/agreement_processor.rb‎

Lines changed: 1 addition & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -8,16 +8,7 @@ class << self
88
def populate
99
delete_all # Simplest way to ensure records deleted from Airtable do not persist in local database
1010

11-
air_table_data_source? ? populate_from_airtable : populate_from_rapid
12-
end
13-
14-
def populate_from_airtable
15-
Agreement.find_each do |agreement|
16-
(agreement.fields["processors"] || []).each do |processor_id|
17-
processor = Processor.find_by(record_id: processor_id)
18-
find_or_create_by!(agreement:, processor:) if processor.present?
19-
end
20-
end
11+
populate_from_rapid
2112
end
2213

2314
def populate_from_rapid

‎app/models/air_table_base.rb‎

Lines changed: 0 additions & 25 deletions
This file was deleted.

‎app/models/air_table_table.rb‎

Lines changed: 0 additions & 19 deletions
This file was deleted.

‎app/models/application_record.rb‎

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,4 @@
22

33
class ApplicationRecord < ActiveRecord::Base
44
primary_abstract_class
5-
6-
def self.air_table_data_source?
7-
Rails.configuration.data_source == :airtable
8-
end
95
end

‎app/models/concerns/airtable_data_source.rb‎

Lines changed: 0 additions & 41 deletions
This file was deleted.

‎app/models/control_person.rb‎

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,7 @@
11
class ControlPerson < DataTable
2-
self.air_table_name = "Controllers"
32
self.rapid_table_name = :controllers
43
self.rapid_name_field = :controller_name
54

6-
has_many :power_control_people, dependent: :delete_all
7-
has_many :powers, through: :power_control_people
8-
95
has_many :agreement_control_people, dependent: :delete_all
106
has_many :agreements, through: :agreement_control_people
117
end

‎app/models/data_table.rb‎

Lines changed: 6 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,18 +1,17 @@
11
# Classes that inherit from this one store data for each of the main data tables
22

3-
# For data held in Airtable, the table name used in Airtable will need to be defined
4-
# in the sub-classes. For example, if you want to store the data for an Airtable "Foo bar"
5-
# you can:
3+
# Subclasses of DataTable need to specify the name of the rAPId table the data
4+
# will be pulled from and which field contains the instance name:
65
# ```
76
# class FooBar < DataTable
8-
# self.air_table_name = 'Foo bar'
7+
# self.rapid_table_name = :my_model
8+
# self.rapid_name_field = :my_model_name
99
# end
1010
# ```
1111
#
1212
# With that in place, `FooBar.populate` will pull each of the records from the data source
1313
# and store them in the data_tables table with the type 'FooBar'.
1414
class DataTable < ApplicationRecord
15-
extend AirtableDataSource
1615
extend RapidDataSource
1716

1817
include PgSearch::Model
@@ -23,7 +22,7 @@ class DataTable < ApplicationRecord
2322
}
2423

2524
class << self
26-
attr_accessor :air_table_name, :rapid_table_name, :rapid_name_field
25+
attr_accessor :rapid_table_name, :rapid_name_field
2726

2827
def populate
2928
raise "Cannot run on root class - DataTable" if self == DataTable
@@ -55,7 +54,7 @@ def before_populate_save(instance)
5554
end
5655

5756
def data_from_source
58-
air_table_data_source? ? data_from_air_table : data_from_rapid
57+
data_from_rapid
5958
end
6059

6160
private

‎app/models/power.rb‎

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,7 @@
11
class Power < DataTable
2-
self.air_table_name = "Power Disclosure"
32
self.rapid_table_name = :dea_upload_powers
43
self.rapid_name_field = :name
54

65
has_many :power_agreements
76
has_many :agreements, through: :power_agreements
8-
9-
has_many :power_control_people
10-
has_many :control_people, through: :power_control_people
117
end

0 commit comments

Comments
 (0)