Class: NtaRuby::Response
- Inherits:
-
Object
- Object
- NtaRuby::Response
- Defined in:
- lib/nta_ruby/response.rb
Constant Summary collapse
- RAW_RESPONSE_COLUMN =
%w[ sequence_number corporate_number process correct update_date change_date name name_image_id kind prefecture_name city_name street_number address_image_id prefecture_code city_code post_code address_outside address_outside_image_id close_date close_cause successor_corporate_number change_cause assignment_date latest en_name en_prefecture_name en_city_name en_address_outside furigana hihyoji ].freeze
- HEADER_COLUMN =
%w[ last_update_date count divide_number divide_size ].freeze
- TIME_COLUMN =
%w[ update_date change_date close_date assignment_date last_update_date ].freeze
- INTEGER_COLUMN =
%w[ sequence_number corporate_number count divide_number divide_size ].freeze
Class Method Summary collapse
Instance Method Summary collapse
-
#initialize(column, csv_header) ⇒ Response
constructor
A new instance of Response.
Constructor Details
#initialize(column, csv_header) ⇒ Response
Returns a new instance of Response.
74 75 76 77 78 79 80 81 82 83 84 85 86 87 |
# File 'lib/nta_ruby/response.rb', line 74 def initialize(column, csv_header) RAW_RESPONSE_COLUMN.each_with_index do |attr, idx| target_val = column[idx] target_val = target_val.to_i if INTEGER_COLUMN.include?(attr) && target_val target_val = Time.parse(target_val) if TIME_COLUMN.include?(attr) && target_val send("#{attr}=", target_val) end HEADER_COLUMN.each_with_index do |attr, idx| target_val = csv_header[idx] target_val = target_val.to_i if INTEGER_COLUMN.include?(attr) && target_val target_val = Time.parse(target_val) if TIME_COLUMN.include?(attr) && target_val send("#{attr}=",target_val) end end |
Class Method Details
.parse(raw_resp) ⇒ Object
63 64 65 66 67 68 69 70 71 |
# File 'lib/nta_ruby/response.rb', line 63 def parse(raw_resp) parsed_csv = CSV.parse(raw_resp.body) csv_header = parsed_csv.shift result = parsed_csv.map { |column| new(column, csv_header) } divide_size = csv_header[3].to_i [result, divide_size] end |