Class: UspsApi::ExtraServiceCodes

Inherits:
Object
  • Object
show all
Defined in:
lib/usps_api/models/extra_service_codes.rb

Overview

Extra Service Code requested * ‘370` - USPS Delivery Duties Paid Fee * `813` - HAZMAT Class 7 - Radioactive Materials Package * `820` - HAZMAT Class 9 - Lithium batteries, unmarked package * `826` - HAZMAT Division 6.2 – Infectious Substances Package * `857` - Hazardous Material * `930` - Insurance <= $500 * `931` - Insurance > $500 * `955` - Return Receipt (Unsupported as of 01/19/2025)

Constant Summary collapse

EXTRA_SERVICE_CODES =
[
  # TODO: Write general description for ENUM_370
  ENUM_370 = 370,

  # TODO: Write general description for ENUM_813
  ENUM_813 = 813,

  # TODO: Write general description for ENUM_820
  ENUM_820 = 820,

  # TODO: Write general description for ENUM_826
  ENUM_826 = 826,

  # TODO: Write general description for ENUM_857
  ENUM_857 = 857,

  # TODO: Write general description for ENUM_930
  ENUM_930 = 930,

  # TODO: Write general description for ENUM_931
  ENUM_931 = 931,

  # TODO: Write general description for ENUM_955
  ENUM_955 = 955
].freeze

Class Method Summary collapse

Class Method Details

.from_value(value, default_value = ENUM_370) ⇒ Object



46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
# File 'lib/usps_api/models/extra_service_codes.rb', line 46

def self.from_value(value, default_value = ENUM_370)
  return default_value if value.nil?

  str = value.to_s.strip
  if str.match?(/\A\d+\z/)
    num = str.to_i
    return num if EXTRA_SERVICE_CODES.include?(num)

    return default_value
  end

  case str.downcase
  when 'enum_370' then ENUM_370
  when 'enum_813' then ENUM_813
  when 'enum_820' then ENUM_820
  when 'enum_826' then ENUM_826
  when 'enum_857' then ENUM_857
  when 'enum_930' then ENUM_930
  when 'enum_931' then ENUM_931
  when 'enum_955' then ENUM_955
  else
    default_value
  end
end

.validate(value) ⇒ Object



40
41
42
43
44
# File 'lib/usps_api/models/extra_service_codes.rb', line 40

def self.validate(value)
  return false if value.nil?

  EXTRA_SERVICE_CODES.include?(value)
end