Skip to content

Instantly share code, notes, and snippets.

@evmorov
Created September 8, 2017 15:14
Show Gist options
  • Select an option

  • Save evmorov/f9a6790b6ae800ed3bc0bf2cc114f7d5 to your computer and use it in GitHub Desktop.

Select an option

Save evmorov/f9a6790b6ae800ed3bc0bf2cc114f7d5 to your computer and use it in GitHub Desktop.
Rails.application.routes.default_url_options[:host] = 'dev.local:3000'
include Rails.application.routes.url_helpers
log_path = File.join(File.dirname(__FILE__), 'normalize_phones.log')
puts "Writing log to '#{log_path}'"
def order_url(order)
if order.commercial?
commercial_order_url(order.commercial_order)
else
state_order_url(order.state_order)
end
end
open(log_path, 'w+') do |f|
PhoneNumber.find_each do |phone|
phone.update(updated_at: Time.now)
if phone.normalized_number.present?
puts "Нормализован телефон '#{phone.number}' с id '#{phone.id}'. Номер '#{phone.normalized_number}'"
next
end
puts "Не удалось нормализовать телефон '#{phone.number}' с id '#{phone.id}'"
person = Person.by_phone_number(phone.number).take
orders = person&.client&.orders
if orders.present?
order_urls = orders.map { |order| order_url(order) }
f.puts "Не удалось нормализовать телефон '#{phone.number}'."
f.puts "Владелец телефона клиент '#{person.full_name}' с почтой '#{person.email}'."
f.puts "Заявки: #{order_urls.to_sentence}."
f.puts ''
end
end
end
puts 'Done!'
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment