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)