lib/wolf_core/application/barton/mappings.rb
module WolfCore module Barton module Mappings PROVIDER_TYPE_MAPPING = { 'MD' => ENV['MD_PRICING_ID'], 'DO' => ENV['DO_PRICING_ID'], 'PA' => ENV['PA_PRICING_ID'], 'DMD' => ENV['DMD_PRICING_ID'], 'NP' => ENV['NP_PRICING_ID'], 'DDS' => ENV['DDS_PRICING_ID'], 'GP' => ENV['GP_PRICING_ID'], } LOCUM_AVAILABILITY_MAP = { 'PT' => 'Part Time', 'FT' => 'Full Time', 'PFI' => 'Not Sure Yet', 'Interim Locum' => 'Between Permanent Positions', 'Perm Only' => 'Permanent', } ORDER_STATUS_MAP = { 'Listing Qualification' => 'pending', 'Pending' => 'pending', 'On Hold' => 'pending', 'Filled' => 'pending', 'Open' => 'live', 'Closed' => 'pending', } SUBMITTAL_STAGE_MAP = { 'Pre-Submission' => 'wait', 'Submittal' => 'wait', 'Send Out' => 'wait', 'On Hold' => 'wait', 'Offer' => 'wait', 'Withdraw' => 'declined', 'Reject' => 'rejected', } def map_provider_type_to_pricing_id(provider_type) pricing_id = PROVIDER_TYPE_MAPPING[provider_type] pricing_id || provider_type end def map_pricing_id_to_provider_type(pricing_id) return nil if pricing_id.blank? pricing_id = pricing_id.to_s provider_type = PROVIDER_TYPE_MAPPING.invert[pricing_id] provider_type || pricing_id end def map_locum_availability(value) LOCUM_AVAILABILITY_MAP[value] || value end def reverse_map_locum_availability(value) LOCUM_AVAILABILITY_MAP.invert[value] || value end def map_order_status(value) ORDER_STATUS_MAP[value] || value end def reverse_map_order_status(value) ORDER_STATUS_MAP.invert[value] || value end def map_submittal_stage_to_order_application_status(value) SUBMITTAL_STAGE_MAP[value] || value end def revert_map_submittal_stage_to_order_application_status(value) SUBMITTAL_STAGE_MAP.invert[value] || value end end end end