Class: ImportBtaaAardvark
- Inherits:
-
Import
- Object
- ActiveRecord::Base
- ApplicationRecord
- Import
- ImportBtaaAardvark
- Defined in:
- app/models/import_btaa_aardvark.rb
Overview
Import GBLv1
Instance Method Summary collapse
-
#assumed_mappings ⇒ Object
Copy Value from Field to Field.
-
#default_mappings ⇒ Object
Solr Field => Hard Value.
-
#derived_mappings ⇒ Object
Derived Values.
- #geomg_b1g_date_range_drsim(args) ⇒ Object
- #geomg_dct_references_s(args) ⇒ Object
- #klass_delimiter ⇒ Object
-
#mapping_configuration ⇒ Object
validations, constants and methods.
-
#required_mappings ⇒ Object
Required Values Key / Default Value.
- #solr_geom_mapping(args) ⇒ Object
Methods inherited from Import
#all_mapping_keys, #check_if_mapped, #convert_data, #mappings_valid?, #run!, #set_csv_file_attributes, #state_machine
Instance Method Details
#assumed_mappings ⇒ Object
Copy Value from Field to Field
23 24 25 26 27 28 29 30 |
# File 'app/models/import_btaa_aardvark.rb', line 23 def assumed_mappings # No longer assuming identfier == slug # [ # { 'dc_identifier_s': 'layer_slug_s' } # ] # Return empty array [] end |
#default_mappings ⇒ Object
Solr Field => Hard Value
16 17 18 19 20 |
# File 'app/models/import_btaa_aardvark.rb', line 16 def default_mappings [ {gbl_mdVersion_s: "Aardvark"} ] end |
#derived_mappings ⇒ Object
Derived Values
33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 |
# File 'app/models/import_btaa_aardvark.rb', line 33 def derived_mappings [ {dct_references_s: { field: "dct_references_s", method: "geomg_dct_references_s" }}, {gbl_dateRange_drsim: { field: "gbl_dateRange_drsim", method: "geomg_b1g_date_range_drsim" }}, {locn_geometry: { field: "locn_geometry", method: "solr_geom_mapping" }} ] end |
#geomg_b1g_date_range_drsim(args) ⇒ Object
78 79 80 81 82 83 84 85 86 87 |
# File 'app/models/import_btaa_aardvark.rb', line 78 def geomg_b1g_date_range_drsim(args) data_hash = args[:data_hash] field = args[:field] # Ex. [2020 TO 2020], [* TO 2020], [2020 TO *] date_range = nil date_range = data_hash[field][0] unless data_hash[field].empty? date_range = date_range[1..12]&.gsub(" TO ", "-") unless date_range.nil? date_range end |
#geomg_dct_references_s(args) ⇒ Object
89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 |
# File 'app/models/import_btaa_aardvark.rb', line 89 def geomg_dct_references_s(args) data_hash = args[:data_hash] field = args[:field] references = [] unless data_hash[field].empty? dct_references = data_hash[field][0] json_data = JSON.parse(dct_references[:value]) json_data.each do |key, value| reference = { value: value, category: Geomg.uri_2_category_references_mappings[key] } references << reference end end references end |
#klass_delimiter ⇒ Object
11 12 13 |
# File 'app/models/import_btaa_aardvark.rb', line 11 def klass_delimiter "|" end |
#mapping_configuration ⇒ Object
validations, constants and methods
7 8 9 |
# File 'app/models/import_btaa_aardvark.rb', line 7 def mapping_configuration Geomg.field_mappings_btaa_aardvark end |
#required_mappings ⇒ Object
Required Values Key / Default Value
55 56 57 58 59 |
# File 'app/models/import_btaa_aardvark.rb', line 55 def required_mappings [ {b1g_status_s: "Active"} ] end |
#solr_geom_mapping(args) ⇒ Object
61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 |
# File 'app/models/import_btaa_aardvark.rb', line 61 def solr_geom_mapping(args) data_hash = args[:data_hash] field = args[:field] # Example: "ENVELOPE(-87\\, -85.76\\, 39.78\\, 37.96)" geom = data_hash[field] if geom.present? geom = geom&.delete("ENVELOPE(") geom = geom&.delete(")") geom = geom&.delete("\\") w, e, n, s = geom.split(",") "#{w},#{s},#{e},#{n}" else "" end end |