Class: ThProvince::District

Inherits:
Object
  • Object
show all
Defined in:
lib/th_province/district.rb

Constant Summary collapse

@@geography_id_to_data =
@@data.values.group_by{|x| x["geography_id"]}
@@province_id_to_data =
@@data.values.group_by{|x| x["province_id"]}
@@amphur_id_to_data =
@@data.values.group_by{|x| x["amphur_id"]}

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(json) ⇒ District

Returns a new instance of District.



22
23
24
# File 'lib/th_province/district.rb', line 22

def initialize(json)
  @json = json
end

Class Method Details

.allObject



12
13
14
# File 'lib/th_province/district.rb', line 12

def self.all
  @@data.values
end

.dataObject



8
9
10
# File 'lib/th_province/district.rb', line 8

def self.data
  @@data
end

.districts_with_amphur_id(amphur_id) ⇒ Object



52
53
54
55
# File 'lib/th_province/district.rb', line 52

def self.districts_with_amphur_id(amphur_id)
  arr = @@amphur_id_to_data[amphur_id]
  arr.map{|a| self.new(a)}
end

.districts_with_geography_id(geography_id) ⇒ Object



42
43
44
45
# File 'lib/th_province/district.rb', line 42

def self.districts_with_geography_id(geography_id)
  arr = @@geography_id_to_data[geography_id]
  arr.map{|a| self.new(a)}
end

.districts_with_province_id(province_id) ⇒ Object



47
48
49
50
# File 'lib/th_province/district.rb', line 47

def self.districts_with_province_id(province_id)
  arr = @@province_id_to_data[province_id]
  arr.map{|a| self.new(a)}
end

.find(id) ⇒ Object



16
17
18
19
20
# File 'lib/th_province/district.rb', line 16

def self.find(id)
  json = @@data[id.to_s]
  return self.new(@@data[id.to_s]) if !json.nil?
  nil
end

Instance Method Details

#amphurObject



38
39
40
# File 'lib/th_province/district.rb', line 38

def amphur
  ThProvince::Amphur.find(@json["amphur_id"])
end

#as_jsonObject



26
27
28
# File 'lib/th_province/district.rb', line 26

def as_json
  @json
end

#geographyObject



30
31
32
# File 'lib/th_province/district.rb', line 30

def geography
  ThProvince::Geography.find(@json["geography_id"])
end

#provinceObject



34
35
36
# File 'lib/th_province/district.rb', line 34

def province
  ThProvince::Province.find(@json["province_id"])
end