module FFaker::AddressKR

def address_detail

def address_detail
  FFaker.numerify(fetch_sample([
                                 building_name,
                                 "#{building_name} ###호",
                                 "#{building_name} #{fetch_sample(BUILDING_DONGS)} ###호"
                               ]))
end

def borough

def borough
  fetch_sample(BOROUGHS)
end

def building_name

def building_name
  "#{NameKR.first_name}#{fetch_sample(BUILDING_SUFFIXES)}"
end

def city

def city
  fetch_sample(CITIES)
end

def land_address

def land_address
  fetch_sample([
                 "#{metropolitan_city} #{borough} #{town} #{land_number}",
                 "#{province} #{town} #{land_number}"
               ])
end

def land_number

def land_number
  FFaker.numerify(fetch_sample([
                                 '###',
                                 '###-#',
                                 '###-##',
                                 '####',
                                 '####-#'
                               ]))
end

def metropolitan_city

def metropolitan_city
  fetch_sample(METROPOLITAN_CITIES)
end

def old_postal_code

def old_postal_code
  FFaker.numerify('###-###')
end

def postal_code

def postal_code
  FFaker.numerify('#####')
end

def province

def province
  fetch_sample(PROVINCES)
end

def road_addess

def road_addess
  fetch_sample([
                 "#{metropolitan_city} #{borough} #{street}",
                 "#{province} #{town} #{street}",
                 "#{metropolitan_city} #{borough} #{street} (#{town})",
                 "#{province} #{town} #{street} (#{town})"
               ])
end

def street

def street
  FFaker.numerify("#{NameKR.first_name}#{fetch_sample(STREET_SUFFIXES)}")
end

def town

def town
  "#{NameKR.first_name}#{fetch_sample(TOWN_SUFFIXES)}"
end