lib/creditsafe/request/find_company.rb in creditsafe-0.3.2 vs lib/creditsafe/request/find_company.rb in creditsafe-0.4.0

- old
+ new

@@ -9,10 +9,11 @@ check_search_criteria(search_criteria) @country_code = search_criteria[:country_code] @registration_number = search_criteria[:registration_number] @company_name = search_criteria[:company_name] @city = search_criteria[:city] + @postal_code = search_criteria[:postal_code] end def message search_criteria = {} @@ -28,16 +29,20 @@ search_criteria["#{Creditsafe::Namespace::DAT}:Address"] = { "#{Creditsafe::Namespace::DAT}:City" => city } unless city.nil? + search_criteria["#{Creditsafe::Namespace::DAT}:Address"] = { + "#{Creditsafe::Namespace::DAT}:PostalCode" => postal_code + } unless postal_code.nil? + build_message(search_criteria) end private - attr_reader :country_code, :registration_number, :city, :company_name + attr_reader :country_code, :registration_number, :city, :company_name, :postal_code def build_message(search_criteria) { "#{Creditsafe::Namespace::OPER}:countries" => { "#{Creditsafe::Namespace::CRED}:CountryCode" => country_code @@ -61,9 +66,13 @@ "required search criteria" end if search_criteria[:city] && search_criteria[:country_code] != 'DE' raise ArgumentError, "city is only supported for German searches" + end + + if search_criteria[:postal_code] && search_criteria[:country_code] != 'DE' + raise ArgumentError, "Postal code is only supported for German searches" end end # rubocop:enable Style/CyclomaticComplexity, Metrics/AbcSize def only_registration_number_or_company_name_provided?(search_criteria)