Sha256: 77d447518d3ff89c9ed3151aaf07651904718691935d92a6df8bfdba157b0c6e
Contents?: true
Size: 920 Bytes
Versions: 2
Compression:
Stored size: 920 Bytes
Contents
module Tufy class BuildContactNumberSegment < BuildSegment expects :raw_data promises :transformed_data REQUIRED_KEYS = [ :contact_number, :contact_number_format, ] executed do |ctx| validate_presence_of_required_keys(ctx.raw_data, REQUIRED_KEYS) ctx.transformed_data = ctx.transformed_data + transform(ctx).upcase end private def self.transform(ctx) raw_data = ctx[:raw_data] result = with(ctx).reduce( Fields::ContactNumber::BuildContactNumberField, Fields::ContactNumber::BuildContactNumberFormatField, ) Constants::SEGMENT_TAG + result[:transformed_data] end module Constants # tags SEGMENT_TAG = "PH03P01" CONTACT_NUMBER_TAG = "03" CONTACT_NUMBER_FORMAT_TAG = "05" # contact number format constants FREE_FORMAT = "F" STRUCTURED_FORMAT = "S" end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
tufy-0.0.8 | lib/tufy/build_contact_number_segment.rb |
tufy-0.0.7 | lib/tufy/build_contact_number_segment.rb |