File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -35,6 +35,7 @@ def enhance
3535 @document [ :media_types ] = media_types
3636 @document [ :identifiers ] = identifiers
3737 @document [ :works ] = works
38+ @document [ :population ] = population
3839 geojson
3940 @document [ :date_modified ] = date_modified
4041 @document [ :slug ] = slug
@@ -132,6 +133,27 @@ def slug
132133
133134 @document [ :slug ]
134135 end
136+
137+ def population
138+ return unless @document [ :types ] . include? 'Populated Place'
139+
140+ osm_rels = CoreDataConnector ::Relationship . where (
141+ project_model_relationship_id : 57 ,
142+ related_record : @record
143+ )
144+
145+ return if osm_rels . empty?
146+
147+ props = osm_rels . map ( &:primary_record ) . map do |osm |
148+ JSON . parse ( osm . user_defined [ '8f35ead2-fa02-4273-8c21-90fea494f362' ] , symbolize_names : true )
149+ end
150+
151+ populations = props . filter { |prop | prop . keys . include? :population } . map { |p | p [ :population ] }
152+
153+ return if populations . empty?
154+
155+ populations . map ( &:to_i ) . max
156+ end
135157 end
136158 end
137159end
You can’t perform that action at this time.
0 commit comments